python -m a.py 和 python a.py区别

https://blog.csdn.net/wonengguwozai/article/details/80480034

python -m的主要作用是以模块的的形式启动脚本;不加-m的话是直接以脚本的方式执行的。如果是直接以脚本方式执行的话,那么脚本当中不能出现相对引用,诸如from . import b之类的话。

造成这一结果的主要原因是sys.path的不同,-m一模块形式运行开头多出了""路径,也就是脚本所在的路径。

在一个模块被导入时,PVM会在后台从一系列路径中搜索该模块,其搜索过程如下:

1、在当前目录下搜索该模块;

2、在环境变量PYTHONPATH中指定的路径列表中依次搜索;

3、在python安装路径中搜索

原文地址:https://www.cnblogs.com/mangmangbiluo/p/10008565.html