使用google colab文件系统导入python嵌套模块

时间:2020-08-28 17:37:38

标签: python python-3.x jupyter-notebook google-colaboratory

我的项目主管中有带有该结构的子模块

submodule/
         __init__.py
         nested/
               __init__.py
               aa.py

__init__.py中的submodule/包含以下代码

import sys, os
sys.path.append(os.path.abspath(".."))

import aa

并且__init__.py中的submodule/nested包含以下代码

from .aa import *

因此,如果我位于submodule目录中,则可以执行以下命令,一切都会很好

import submodules.aa

但是它在Google colab上失败了,我想这很可能是因为这一行没有执行假定的功能

sys.path.append(os.path.abspath(".."))

我正在尝试从要在google colab上运行的jupyter笔记本中导入以上内容

1 个答案:

答案 0 :(得分:1)

通过在submodule/__init__.py

中编写以下代码解决了该问题
import sys, os
sys.path.append(os.path.abspath(".."))

try:
  import google.colab  # so I only do it when I'm on google colab
  sys.path.insert(0, "/content/submodule")
except:
  pass

import aa