Использование пользовательских пакетов в Google-Colab Laboratory - PullRequest
0 голосов
/ 15 декабря 2018

Я пытаюсь использовать свой пользовательский пакет в Google Colab Laboratory, и при этом у меня возникают странные ошибки.Обратите внимание, что пакет, который я пытаюсь использовать, работает на моем компьютере без ошибок.

Это пакет Python 3.6 с именем rohan.Он очень прост с точки зрения функциональности.

Сначала я установил его с помощью команды pip (pip install rohan).Но я получил ошибку ModuleNotFoundError.

import rohan
---------------------------------------------------------------------------
ModuleNotFoundError Traceback (most recent call last)
<ipython-input-1-9046ed7b4857> in <module>()
----> 1 import rohan

ModuleNotFoundError: No module named 'rohan'

Затем я установил его из источника.

%%bash
git clone https://github.com/rraadd88/rohan.git
cd rohan
pip install -e .

На этот раз я мог импортировать основной модуль без каких-либо ошибок (import rohan).Однако, если я пытаюсь импортировать субмодуль (dandage), я получаю ImportError.

from rohan import dandage
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-5-6ea35256170e> in <module>()
----> 1 from rohan import dandage

ImportError: cannot import name 'dandage'

Для меня структура пакета выглядит хорошо.

rohan
├── MANIFEST.in
├── rohan
│   ├── dandage
│   │   ├── subsubmodule
│   │   │   ├── script.py
│   │   │   └── __init__.py
|   |   ├── script.py
|   |   └── __init__.py
|   ├── script.py
│   └── __init__.py
├── setup.cfg
└── setup.py

Источник: https://github.com/rraadd88/rohan

Также, как я уже сказал, пакет очень хорошо работает на моем компьютере.Поэтому я не уверен, почему я не могу использовать его в колаборатории.

1 Ответ

0 голосов
/ 15 декабря 2018

Вам нужно будет добавить каталог, в котором вы клонировали репо, в sys.path.Например:

!git clone https://github.com/rraadd88/rohan.git
import sys
sys.path.append('/content/rohan')
from rohan import dandage

Вот полный блокнот: https://colab.research.google.com/drive/1LSC_HyfbuOlEn7pfZYAjiOSE1fp6uipl

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...