在交互模式下执行Python脚本的可能性吗
通常情况下,你可以通过命令行来运行一个Python脚本,比如输入:python myscript.py
。但是如果你在交互模式下,怎么才能执行一个存储在电脑上的Python脚本呢?
>>> exec(File) ???
其实,你可以多次执行这个脚本。
6 个回答
14
你可以看看 IPython,这是一个更强大的交互式命令行工具。它有很多特别的“魔法”命令,比如 %run script.py
(这个命令会运行你的脚本,并且把脚本中定义的变量留给你查看)。
46
如果你用 import file
这个方式来导入文件,不需要加 .py 后缀,这样是可以的。不过要注意,导入后 __name__
的值不会是 "__main__"
,所以如果你的脚本里面有检查是否在交互模式下运行的代码,你可能需要绕过这些检查。
另外,如果你想在脚本运行后查看环境的状态,可以试试 python -i script.py
。
补充一下:如果你想重新加载这个文件,可以用 file = reload(file)
。
52
使用 execfile('script.py')
这个命令,但它只适用于 Python 2.x 版本。如果你在用 3.0 版本,可以试试 exec(open('script.py').read())
这个方法。