在VS Code中,可以像在Spyder中那样在集成的Python终端中运行Python代码吗



当前,在Visual Studio Code(在Windows 10 64位下)中,在一个名为pathmyfile.py的Python文件中,如果用鼠标右键单击上下文菜单,然后选择"在终端中运行Python文件",则会打开一个集成的CMD终端,并在其中自动运行文件:

python.exe pathmyfile.py

在文件停止运行后,一个文件自然会留在集成的CMD光标处。

例如,这种行为与Spyder这样的IDE完全不同。在那里,当您运行代码时(例如,使用F5),最后一个仍然位于Python光标处,并且可以访问代码运行时创建的变量的内容。

有没有一种方法可以在Visual Studio代码中实现类似的行为?

您可以配置VS Code Python扩展以使用-i命令行选项
中描述https://docs.python.org/3/using/cmdline.html#cmdoption-i

您只需添加以下设置(在settings.json文件内)

"python.terminal.launchArgs": ["-i"],

这将执行命令python.exe -i pathmyfile.py
我不知道这是不是一个新功能,但我已经用了一段时间了。

如果您想使用终端IPython,就像在Spyder中一样,您可以使用一组不同的选项,如下所示:

"python.terminal.launchArgs": ["-m","IPython","-i"],

有了这些,VS Code将执行命令python.exe -m IPython -i pathmyfile.py
然后,它将以"脚本"的形式运行IPython模块(带有-m选项),该脚本将使用选项-i pathmyfile.py,即IPython将运行该文件并保持打开状态。


BTW,另一件事是:您可以在Spyder的集成终端(带有#%%的代码区域)中运行"cells"。但在VS Code中,你似乎做不到。

我提出了一个关于在VS代码集成终端中运行Python文件单元格的"变通方法"的问题,该问题发布在这里

是。打开一个终端窗口,它就像你电脑上的终端窗口。您可以键入python filepathandname,python脚本将像从命令行执行一样执行。

最接近的方法是在调试器下运行代码,并在结束时设置断点以暂停退出执行。否则,请随时在https://github.com/microsoft/vscode-python.

最新更新