如何从命令行运行模块?

时间:2016-01-23 16:24:18

标签: python

假设某处有一个模块,我可以用

导入
from sound.effects import echo

如何直接从命令行运行echo

命令

python sound/effects/echo.py

不起作用,因为相对路径通常不正确

1 个答案:

答案 0 :(得分:5)

如果模块在导入时执行了顶级代码,则可以使用-m switch从命令行运行它(使用Python属性表示法):

python -m sound.effect.echo

然后该模块作为脚本执行,因此if __name__ == '__main__':后卫将通过。例如,参见timeit module,它在从命令行运行时执行timeit.main()函数。