像unittest这样的许多软件包都有一个易于使用的命令行界面,例如: unittest中的测试发现功能:https://docs.python.org/2/library/unittest.html#test-discovery
但是,要在python中实现相同的功能,有时需要深入挖掘文档。在上面的示例中,与命令行命令相比,实现相同所需的python代码要难以理解。
因此,我想知道:有没有一种将python -m mymod args
翻译成某种东西的一致方法,可以在python解释器中使用?
编辑:我要求一个合理的策略在某种情况下该做什么,我知道python -m命令但仅此而已。当我被迫使用python解释器时,这些知识是否完全没用?
答案 0 :(得分:1)
您可以使用runpy.run_module
function:
import runpy
import sys
sys.argv[1:] = ['arg1', 'arg2', 'arg3']
runpy.run_module('module.name', run_name='__main__', alter_sys=True)
执行module.name
,就像您键入:
python -m module.name arg1 arg2 arg3