Visual Studio Code 终端在 Powershell 中持续运行 Python 脚本

5
我最近安装了Python和Visual Studio Code。我上完入门课后写了一个基本脚本并在Visual Studio Code中运行它,却发现了Python在我的Visual Studio Code中设置的问题。 问题: 当我启动Visual Studio Code并打开一个Python文件时,终端默认为"C:\Users\my_name\Documents Python"(这是存储我的Python文件的文件夹)。据我所知,在Python中,提示符应该是">>>"。我能运行我的脚本,但不能在终端中运行任何其他Python代码(例如像z = 5这么简单的代码)。如果我输入"Python",就会出现">>>"的提示符,但无法再运行我的脚本。
我认为这是安装问题,所以我卸载并重新安装了Python和Visual,但问题仍然存在。
我尝试将程序安装路径下的Python文件路径添加到Windows环境中的系统设置中,也在重新安装Python时点击了"添加到Path",但这些解决方案似乎都没有起作用。
当基本的Python代码(例如z=5)无法正常工作,但脚本可以正常运行时,我会得到以下错误消息:
PS C:\Users\my_name\Documents\Python 2> z=5
z=5 : The term 'z=5' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ z=5
+ ~~~
    + CategoryInfo          : ObjectNotFound: (z=5:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

以下是我切换到Python并尝试运行脚本后收到的错误信息。
PS C:\Users\my_name\Documents\Python 2> python
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul  8 2019, 19:29:22) [MSC v.1916 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> & C:/Users/my_name/AppData/Local/Programs/Python/Python37-32/python.exe "c:/Users/my_name/Documents/Python 2/new2.py"
  File "<stdin>", line 1
    & C:/Users/my_name/AppData/Local/Programs/Python/Python37-32/python.exe "c:/Users/my_name/Documents/Python 2/new2.py"
    ^
SyntaxError: invalid syntax
>>>
4个回答

3
你的设置没有问题。看起来你对执行Python代码的不同方式缺乏基本的理解。
VS Code有集成终端。从那里,你可以运行你的Python脚本,即扩展名为py的文件,就像在终端/cmd/powershell上一样。这是编写和执行代码的常见方式。
当你键入python并敲击回车时,你启动了Python交互式Shell。这时你会得到>>>提示符。你的Python解释器将评估和执行你每输入一行并敲击回车的代码。如果你在cmd/powershell中在VS Code之外键入python,同样也会发生这种情况。交互模式主要用于实验、测试简单的想法、简单的代码示例等,但你在退出交互模式时键入的代码将被丢失,方法是使用>>>exit()命令。
更多参考资料请查看: "最初的回答"

谢谢Buran。我仍然不明白为什么在运行脚本后,我不能在终端输入像“z = 5”这样简单的Python代码并测试它。我的一个朋友也在使用Python,他总是有“>>>”作为提示符,并可以运行脚本以及使用终端测试代码。 - wolfblitza
>>>(即交互式提示符)中,您无法运行脚本。在那里,您可以逐行输入和执行Python代码。当您处于终端(而不是Python交互模式)时,您无法执行 z = 5,因为它是未知命令。当您尝试在 cmd 中运行它时,您将收到相同的错误。您检查了我分享的链接吗? - buran
我能想到的唯一可能性是你的朋友在VSCode中启动了2个集成终端,并在它们之间切换(从终端右上角的下拉菜单中选择)。 - buran

1

我找出了问题所在。Visual Code认为Python安装在我保存.py文件的目录下,而不是实际位置——在程序文件夹下。需要在设置中编辑路径。


2
好的,但你是怎么做到的呢?(请展示代码) - Zack Plauché

1
阅读上面的文档后,我在运行脚本后也遇到了类似的问题。我认为VSC在运行脚本后退出了Python,并需要重新启动Python终端。我想知道是否可以让VSC在运行脚本后默认返回Python而不是退出到PowerShell。

0

当您处于调试模式并停止时,可以在“调试窗口”中键入交互式Python。这对于检查对象、变量等非常有用。

否则,建议只需在终端中键入“Python”即可获得交互式Python提示符('>>>')。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接