使用-m运行当前目录中的.py文件会出错

时间:2016-02-15 04:56:21

标签: python module

我有一个简单的脚本a.py

# a.py
print(1)

我在同一个指令

中使用-m选项运行它
$ python2 -m a.py
1
/usr/local/opt/python/bin/python2.7: No module named a.py

$ python3 -m a.py
1
/usr/local/opt/python3/bin/python3.5: Error while finding spec for 'a.py' (<class 'AttributeError'>: module 'a' has no attribute '__path__')

虽然我知道-m表示Executing modules as scripts,并且在这种情况下会将__name____main__更改为a,但我不知道为什么会导致错误

2 个答案:

答案 0 :(得分:0)

似乎你想要

python -m a

答案 1 :(得分:0)

来自the docs

  

由于参数是模块名称,因此不得提供文件扩展名(.py)

即。只需将其作为python -m a

运行