[英]How to fix 'Import Error: No module named' in python2.7
將模塊放入現有項目時出現導入錯誤。 文件夾結構如下:
model
/new_sub_model
__init__.py
new_file.py
/sub_model
__init__.py
file.py
__init__.py
file_to_import.py
new_sub_model及其下的文件是我寫的,sub_model之前已經存在,new_file.py和file.py都導入file_to_import.py,在file.py中有效,在new_file.py中無效,報錯如題。 每個文件都有init.py。
下面列出的導入語句
from model.file_to_import import function
the error traceback lists below
from model.file_to_import.py import function
File "/usr/lib64/python2.7/site-packages/gevent/builtins.py", line 93, in __import__
result = _import(*args, **kwargs)
ImportError: No module named file_to_import
我不知道問題是什么以及如何解決。 很高興得到您的答復。
編輯:我通過使用語句解決了這個問題
from..file_to_import import function
這解決了我的問題,但我不知道為什么。
您的 model 目錄中沒有__init__.py
因此它不能用作模塊。 在工作文件中,必須有一些東西將文件夾附加到 Python 查找模塊的路徑。 沒有任何更具體的結構和代碼,這是我最好的猜測。
Python 將當前目錄用於導入語句,因此如果您嘗試從“上層”目錄導入某些內容,它將找不到。 只需在 import 語句之前使用這些行:
import sys
sys.path.insert(1, '../')
並將導入語句更改為from file_to_import import function
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.