簡體   English   中英

從同一項目中的不同目錄導入類

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM