子模块导入不适用于Google Colab

时间:2019-02-02 06:45:54

标签: python pip google-colaboratory

我有一个名为包boo,其余的谷歌colab安装从github上存储库。安装过程看起来不错,并显示成功消息Successfully installed boo-0.1。然而import boo失败上第一内部导入。

我复制的相同的安装步骤中的本地虚拟环境和工作包,但不能在协同合作。

这是我的步骤和错误跟踪:

!rm -rf sandbox
!git clone https://github.com/ru-corporate/sandbox.git
!pip install -r sandbox/requirements.txt 
!pip install sandbox/.

或者,我尝试了

!pip install git+https://github.com/ru-corporate/sandbox.git@master

的错误跟踪:

ModuleNotFoundError                       Traceback (most recent call last)

<ipython-input-7-fc0b1d036b35> in <module>()
----> 1 import boo

/usr/local/lib/python3.6/dist-packages/boo/__init__.py in <module>()
----> 1 from boo.boo import download, build, read_dataframe, files
      2 from boo.views.whatis import whatis

/usr/local/lib/python3.6/dist-packages/boo/boo.py in <module>()
      3 from tqdm import tqdm
      4 
----> 5 from boo.file.download import curl

基本上,导入从根__init__.py到根boo.py并偶然发现boo/file/download.py

我如何使该软件包在协作上工作?

1 个答案:

答案 0 :(得分:0)

我可以按照建议的here编辑setup.py来解决子包的行为:

  # ...
  packages=setuptools.find_packages()
  # ...

与本地安装相比,Somehow Colab对此参数的限制更大。