無法在Python中導入我自己的模塊


Answers

import函數import查找文件到您的PYTHONPATH環境中。 變量和你的本地目錄。 因此,您可以將所有文件放在同一個目錄中,或將路徑輸入導出到終端::

export PYTHONPATH="$PYTHONPATH:/path_to_myapp/myapp/myapp/"
Question

我很難理解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



在我的情況下,儘管Windows文件名不區分大小寫,但Python導入仍然是Windows與Python的驚喜。 所以如果你有Stuff.py文件,你需要按照Stuff.py導入這個名字。




你可以試試

from myapp.myapp import SomeObject

因為您的項目名稱與myapp.py相同,因此它首先搜索項目文檔




Links