回顧:
- 導入官方庫的三種手段
- 導入自定義庫/模塊的方式
- 導入庫/模塊的核心邏輯:找到根目錄(python解釋器的目錄和終端的目錄不一致)
# 直接導入
from random import randint
print(randint(1, 10)) # 導入自定義庫
import module
module.hello()
from module import hello
hello()# 不同目錄下
import module1.module
module1.module.hello()
場景一
main.py和 rectangle.py都在同一目錄
運行方案:直接在終端python main.py
場景二
main.py和 rectangle.py都在根目錄的子目錄 model下
運行方案:
1. 運行命令:python model/main.py
2. 進入路徑:cd xxx(main的相對路徑),然后執行python main.py
(注意如果先cd后,就不能采用第一個命令了)
場景三
main.py在根目錄,rectangle.py在子目錄model下
運行方案:直接在終端python main.py
場景四
main.py和rectangle.py都在根目錄的子目錄model下,并且model下還有子目錄 utils(跨目錄導入)
項目根目錄
├── rectangle2.py
└── utils/
? ? ├── __init__.py ? (必需添加,將 model 目錄標記為一個可導入的包)
? ? └── rectangle.py
└── model/
? ? └── main.py
運行方式
python -m model.main
如果直接使用python model/main.py,會報錯,
當使用 python -m model.main 時,Python 會將當前目錄(即項目根目錄)添加到 sys.path 的開頭。
————————————————
本文參考原文鏈接如下
? ? ? ? ? ? ? ? ? ? ? ??
原文鏈接:https://blog.csdn.net/2301_77865880/article/details/148054820