我的理解:
假設有一個文件夾 app
- 若 app 下有
app/__init__.py文件,則此 app 被視作一個 package,而 app 下的其他文件/文件夾被視作 module - 我們知道,package 的意義是作為一個整體,提供某些功能。因此,package 內部的各個 module 之間使用相對路徑導入。
- 比如:在 module1.py 內,這樣相對導入:
from .module2 import myClass2 - 注意,問題來了,此時不能之間運行 module.py 這個文件,否則會報錯:SystemError: Parent module '' not loaded, cannot perform relative import
- 我們只能在package外,也就是文件夾 app 外的 run.py文件中導入:
from app.module2 import myClass2
