[英]Python3: Import class problems
假設我們有一棵這樣的樹:
└── my_project
├── A.py
├── __init__.py
├── my_apps
├── app_framework.py
├── app1.py
├── app2.py
├── __init__.py
在文件夾my_apps
,在app_framework.py
定義了一個通用類。 其余文件均基於該文件定義自己的子類。
這些文件如下所示:
app_framework.py
:
Class App():
...
app1.py
:
from app_framework import App
Class MyApp1(APP):
...
...
app2.py
:
from app_framework import App
Class MyApp2(APP):
...
...
所以,在我的項目文件夾中,我想使用
from my_apps import MyApp1, MyApp2
但是我有兩個錯誤:
首先是ModuleNotFoundError: No module named app_framework
。 我部分地通過改變修復它from app_framework import App
,以from .app_framework import App
ImportError: cannot import name 'MyApp1' from 'my_apps'
我可以from my_apps.app1 import MyApp1, MyApp2
,但我更喜歡from my_apps import MyApp1, MyApp2
, from my_apps import MyApp1, MyApp2
,這看起來更加簡潔。 怎么做?
在my_apps
創建__init__.py
文件, my_apps
所需的類導入該文件:
# my_project/my_apps/__init__.py
from .app1 import MyApp1
from .app2 import MyApp2
然后在您的A.py
您可以執行以下操作:
from .my_apps import MyApp1, MyApp2
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.