小智 53
试试这个:
import sys
sys.argv = ['arg1', 'arg2']
execfile('abc.py')
Run Code Online (Sandbox Code Playgroud)
请注意,abc.py完成后,控制权将返回到调用程序.请注意,如果确实完成,abc.py可以调用quit().
小智 48
实际上,我们不想这样做吗?
import sys
sys.argv = ['abc.py','arg1', 'arg2']
execfile('abc.py')
Run Code Online (Sandbox Code Playgroud)
Fre*_*Foo 45
execfile运行Python文件,但是通过加载它而不是脚本.您只能传递变量绑定,而不能传递参数.
如果要从Python中运行程序,请使用subprocess.call.例如
subprocess.call(['./abc.py', arg1, arg2])
Run Code Online (Sandbox Code Playgroud)
nos*_*klo 25
import sys
import subprocess
subprocess.call([sys.executable, 'abc.py', 'argument1', 'argument2'])
Run Code Online (Sandbox Code Playgroud)
对于更有趣的场景,您还可以查看该runpy模块.从python 2.7开始,它具有该run_path功能.例如:
import runpy
import sys
# argv[0] will be replaced by runpy
# You could also skip this if you get sys.argv populated
# via other means
sys.argv = ['', 'arg1' 'arg2']
runpy.run_path('./abc.py', run_name='__main__')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
144603 次 |
| 最近记录: |