python -m 运行和直接运行的区别

2021-01-16  本文已影响0人  Jarkata

开门见山:

区别:sys.path不同
>>> python xxx.py  # 直接运行
>>> python -m xxx # 当做模块来启动

实际应用

假设我们有如下文件结构

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 # 成功
上一篇 下一篇

猜你喜欢

热点阅读