一分鍾版本
>>> python xxx.py # 直接運行
>>> python -m xxx # 相當於import,叫做當做模塊來啟動
主要區別在於sys.path
不同
直接運行會將該腳本所在目錄添加至sys.path
當做模塊啟動則會將當前運行命令的路徑添加至sys.path
實際應用
假設我們有如下文件結構
package1/
|--__init__.py
|--mod1.py
package2/
|--__init__.py
|--run.py
在run.py
中import了mod1.py
# run.py
from package1 import mod1
則
>>> python run.py # 失敗,提示找不到package1
# 切換到package2 所在目錄
>>> python -m package2.run # 成功