我已经有了解决这个问题的方法,但只是想确保它是最佳的,并且按照我认为的方式进行。我有一个像这样的文件夹结构:Main+ data++ __init__.py++ get_data.py+ work++ stuff.pyget_data.py 有一个名为 GetData 的类,我需要导入它。我在 stuff.py 中。当我使用时:from data.get_data import GetData这是行不通的。所以我这样做了:sys.path.append(".")如果我这样做,我的代码就可以工作。然而,当我通过以下方式查看路径时,它看起来有点奇怪:print(sys.path)我明白了:['C:\\Main\\Notebooks', '.']我认为我正在做的是获取当前工作目录并将该路径附加到更高一级。这有效。它是否正确?有没有更优化的解决方案?
2 回答
凤凰求蛊
TA贡献1825条经验 获得超4个赞
您可以尝试在文件开头添加以下语句:
import os,sys sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
它将需要导入的模块的路径添加到系统路径中。
互换的青春
TA贡献1797条经验 获得超6个赞
您必须在您的目录中添加一个空__init__.py
文件。data
work
主要的
数据
++__init__.py
++ get_data.py工作
++__init__.py
++ stuff.py
之后就from data.get_data import GetData
可以了。
添加回答
举报
0/150
提交
取消