我很难理解在Python中模块导入是如何工作的(我以前也从来没有用其他语言做过)。
假设我有:
myapp/__init__.py
myapp/myapp/myapp.py
myapp/myapp/SomeObject.py
myapp/tests/TestCase.py
现在我试着得到这样的东西:
myapp.py
===================
from myapp import SomeObject
# stuff ...
TestCase.py
===================
from myapp import SomeObject
# some tests on SomeObject
然而,我肯定做错了什么,因为Python看不到myapp
是一个模块:
ImportError: No module named myapp
发布于 2012-02-22 02:31:19
函数import
在您的PYTHONPATH环境中查找文件。变量和您的本地目录。因此,您可以将所有文件放在同一目录中,也可以将路径导出到终端::
export PYTHONPATH="$PYTHONPATH:/path_to_myapp/myapp/myapp/"
发布于 2013-05-21 07:36:23
导出路径是一种很好的方法。另一种方法是向您的站点包位置添加一个.pth。在我的mac上,我的python将站点包保存在/Library/Python中,如下所示
/Library/Python/2.7/site-packages
我在/Library/Python/2.7/site-packages/awesome.pth中创建了一个名为awesome.pth的文件,并在该文件中放入以下引用我的优秀模块的路径
/opt/awesome/custom_python_modules
发布于 2017-03-06 21:54:16
你可以试试
from myapp.myapp import SomeObject
因为您的项目名称与使其首先搜索项目文档的myapp.py相同
https://stackoverflow.com/questions/9383014
复制相似问题