Как я могу импортировать пользовательский пакет и модуль Python в блокнот Jupyter в Google Colab? - PullRequest
0 голосов
/ 02 ноября 2019

Когда я импортирую пользовательский пакет и модуль Python в мою записную книжку Jupyter в Google Colab, интерпретатор Python сообщает об ошибке, указывающей «ModuleNotFoundError: нет модуля с именем« utilities »».

Я бы хотел бытьвозможность разрабатывать блокнот Jupyter, который использует функции из разных классов / модулей Python из разных пакетов Python, которые я разработал и протестировал.

Я упростил свой блокнот Jupyter, который выполняет вызов функции для единственного модуля / класса Pythonв одном пакете Python, хранящемся в том же каталоге на Google Диске.

Исходный код для записной книжки Jupyter:

import importlib.util
from google.colab import drive
drive.mount('/content/drive')
import sys
sys.path.append('/content/drive/My\ Drive/Colab\ Notebooks/utilities')
# Module to test if I can import a Python package and module.
from utilities.simple_module import simple
class Try_to_Import_Package:
    number_times_executed = 0
    #   Accessor and Mutator method.
    @staticmethod
    def get_number_times_executed():
        Try_to_Import_Package.number_times_executed = Try_to_Import_Package.number_times_executed + 1
        print(" Try_to_Import_Package 'Hello World' function called:",Try_to_Import_Package.number_times_executed,"times.")
if __name__ == "__main__":
    for x in range(10):
        simple.get_number_times_executed()
        Try_to_Import_Package.get_number_times_executed()

В каталоге для моего хостинг-кода Google Drive для Google ColabБлокноты Jupyter (My Drive -> Colab Notebooks), у меня есть папка с именем «utilities» со скриптом Python под названием «simple_module.py».

Исходный код для «simple_module.py» предоставляется следующим образом:

class simple:
    number_times_executed = 0
    #   Accessor and Mutator method.
    @staticmethod
    def get_number_times_executed():
        simple.number_times_executed = simple.number_times_executed + 1
        print(" simple 'Hello World' function has been called:",simple.number_times_executed,"times.")

В каталоге "Colab Notebooks" на моем Google Диске яТакже у меня есть файл с именем: " init .py".

Его содержимое:

from .utilities import *

Что мне нужно сделать, чтобыуметь использовать модули / классы из пакетов Python, которые я создал и тщательно протестировал.

P / S: вопрос и решение в Как импортировать пользовательские модули в Google Colab? не распространяется на импорт модулей Python, встроенных в пакеты Python.

Я могу импортировать модули Python в каталог для моего кода хостинга на Google Диске для ноутбуков Google Colab Jupyter (Мой диск -> Блокноты Colab).

Однако у меня есть проблемы, включая модули / классы Python, хранящиеся в пакетах Python (подкаталоги папки / каталога, включая скрипт Python с главной функцией для программы Python.)

...