64

通常您可以执行 Python 脚本,例如:python myscript.py,但是如果您处于交互模式,如何在文件系统上执行 Python 脚本?

>>> exec(File) ???

应该可以多次执行脚本。

4

6 回答 6

46

使用execfile('script.py')但它只适用于 python 2.x,如果你使用的是 3.0 试试这个

于 2011-01-07T10:22:06.053 回答
34

import file__name__没有.py 扩展名会这样做,但是"__main__"如果脚本进行任何检查以查看它是否以交互方式运行,您将需要绕过它们。

或者,如果您想在脚本运行后查看环境,请尝试python -i script.py

编辑:再次加载它

file = reload(file)

于 2011-01-07T10:12:58.543 回答
11

您可能想研究IPython,一个更强大的交互式 shell。它有各种“魔法”命令%run script.py,包括(当然,它运行脚本并留下它定义的任何变量供您检查)。

于 2011-01-07T11:07:52.523 回答
5

您也可以使用该subprocess模块。就像是:

>>> import subprocess
>>> proc = subprocess.Popen(['./script.py'])
>>> proc.communicate()
于 2011-01-07T10:17:39.293 回答
2

您可以使用 python 运行任何系统命令:

>>>from subprocess import Popen
>>>Popen("python myscript.py", shell=True)
于 2011-01-07T10:15:10.750 回答
2

最简单的方法是使用os模块:

import os

os.system('python script.py')

实际上os.system('cmd')是运行shell命令。希望这就足够了。

于 2018-09-01T09:35:37.317 回答