[英]How to fix “ImportError: No module named …”
我已經在這里復查了大多數類似的問題。 我是python的新手,正在使用Ubuntu 13.10。項目結構為
├── projecttest
│ ├── api.py
│ ├── controller
│ │ ├── controller.py
│ │ ├── controller.pyc
│ │ ├── init_db.py
│ │ ├── __init__.py
│ │ ├── __init__.pyc
│ │ ├── settings.py
│ │ ├── settings.pyc
│ │ └── extra
│ │ ├── extra.py
│ │ ├── extra.pyc
│ │ ├── __init__.py
│ │ └── __init__.pyc
│ ├── __init__.py
│ ├── lib
│ │ └── __init__.py
│ ├── models
│ │ ├── documents.py
│ │ ├── documents.pyc
│ │ └── __init__.py
當我嘗試時,所有__init__.py
文件都是空的(沒有隱藏的字符)
$ python init_db.py
具有:
from projecttest.models.documents import *
我越來越:
Traceback (most recent call last):
File "controllers/init_db.py", line 1, in <module>
from projecttest.models.documents import *
ImportError: No module named projecttest.models.documents
您需要指定PYTHONPATH環境變量,它會增加模塊文件的默認搜索路徑。
可以將PYTHONPATH視為絕對路徑。 如果指定它,則可以在程序中相對於PYTHONPATH導入模塊。
在您的情況下,將類似於以下行:
PYTHONPATH=/<dir>/<folder>/projecttest/ python init_db.py
然后,您可以導入模塊而不會出現以下問題:
from models.documents import *
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.