[英]Importing classes from different directory within the same project
我有下一個目錄結構:
.
├── models
│ ├── description.py
│ ├── identification.py
│ └── person.py
└── utils
└── generators
└── person.py
我在導入models
目錄中存在的每個文件中的類時遇到下一個錯誤:
Traceback (most recent call last):
File "utils/generators/person.py", line 1, in <module>
from models.person import Person
ModuleNotFoundError: No module named 'models'
這是我的utils/generators/person.py
文件中的代碼:
from models.person import Person
from models.identification import Identification
from models.description import Description
如何在我的文件中導入這些類?
Python 不會在上級目錄的后代目錄中搜索導入時的模塊。
為了消除這個問題,您可以在根目錄中引入一個main.py
(您將其標記為點),它將導入公共命名空間。
另外,正如評論中明智地指出的那樣,不再需要為 Python 3.3+ 添加空的__init__.py
文件(請參閱此答案),因此這不是 Python 3 的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.