我试图从解释器内使用Python命令执行一个文件。
编辑:我试图使用变量和设置从该文件,而不是调用一个单独的进程。
我试图从解释器内使用Python命令执行一个文件。
编辑:我试图使用变量和设置从该文件,而不是调用一个单独的进程。
当前回答
对于Python 2:
>>> execfile('filename.py')
对于Python 3:
>>> exec(open("filename.py").read())
# or
>>> from pathlib import Path
>>> exec(Path("filename.py").read_text())
请参见文档。如果您使用的是Python 3.0,请参阅此问题。
参见@S的回答。Lott提供了一个示例,说明如何在执行完filename.py后访问全局变量。
其他回答
没想到我还没见过。你可以执行一个文件,然后在执行结束后使用-i选项保持解释器打开:
| foo.py |
----------
testvar = 10
def bar(bing):
return bing*3
--------
$ python -i foo.py
>>> testvar
10
>>> bar(6)
18
几种方式。
从外壳开始 python someFile.py 在IDLE中,按F5。 如果你是交互式输入,试试这个(Python3): > > > exec (open (filename.py) .read ()) 对于Python 2: >>>变量= {} execfile("someFile.py",变量) >>>打印someFile模块中的变量# globals
Python 2 + Python 3
exec(open("./path/to/script.py").read(), globals())
这将执行一个脚本,并将其所有的全局变量放在解释器的全局作用域中(大多数脚本环境中的正常行为)。
Python 3 exec文档
对于Python 3:
>>> exec(open("helloworld.py").read())
在运行该命令之前,请确保您在正确的目录中。
要从不同的目录运行一个文件,你可以使用下面的命令:
with open ("C:\\Users\\UserName\\SomeFolder\\helloworld.py", "r") as file:
exec(file.read())
对于Python 2:
>>> execfile('filename.py')
对于Python 3:
>>> exec(open("filename.py").read())
# or
>>> from pathlib import Path
>>> exec(Path("filename.py").read_text())
请参见文档。如果您使用的是Python 3.0,请参阅此问题。
参见@S的回答。Lott提供了一个示例,说明如何在执行完filename.py后访问全局变量。