在 VSCode 中运行任何 Python 脚本时出现“&”语法错误?

Posted

技术标签:

【中文标题】在 VSCode 中运行任何 Python 脚本时出现“&”语法错误?【英文标题】:Ampersand "&" syntax error running any Python script in VSCode? 【发布时间】:2019-10-20 18:05:20 【问题描述】:

在 VSCode 中,我通常使用 Python 扩展名运行 Python 脚本,然后右键单击 .py 脚本并选择“在终端中运行 Python 文件”。在今天之前,这种方法效果很好,但现在我遇到了以下问题......

$ & C:/Users/.../Python/Python37-32/python.exe c:/.../test.py
bash: syntax error near unexpected token `&'

现在我无法使用此方法运行我的 python 脚本。我可以看到错误的原因,我只是不确定 为什么 VSCode 会在该 & 符号前加上前缀,以及它之前是否这样做过。

我在玩 virtualenv,也许这就是原因,但即使虚拟环境不活动,我也会遇到这个问题。我重新启动了 VSCode 和我的电脑,它似乎坏了。

【问题讨论】:

我不确定解决方案是否有效,但看起来这就是它发生的原因github.com/Microsoft/vscode/issues/19839#issuecomment-277574280 @RonSerruya 谢谢,这有帮助。我能够通过将我的 Python 扩展版本降级到以前的版本来解决这个问题。看起来他们的最新版本(几小时前发布)可能有这个错误。 【参考方案1】:

这在 VS Code 版本 1.59.xxx 或更高版本中已修复。

【讨论】:

【参考方案2】:

我在 2021.5.842923320 (05-14-2021) 版本中遇到了同样的错误。

在设置中添加"terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe" 是一种解决方法。

更多信息请访问Issue #16175。

【讨论】:

问题链接非常有用。谢谢! VS Code 抱怨这在 1.56.xx 等版本中已被弃用。相反,您需要通过创建一个新的终端配置文件来配置您的 shell。安装新版 VS Code 1.59.xx 解决了这个问题。【参考方案3】:

除了降级,您还可以将默认终端从 cmd 更改为 powershell。 为此,请转到您的 settings.json 并替换 "terminal.integrated.shell.windows" 参数 从路径到 cmd(例如"C:\\Windows\\System32\\cmd.exe") 到powershell的路径(例如"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe") 如果您使用的是 VScode,请按 ctrl+shift+p 并搜索默认终端并将其更改为 powershell。

【讨论】:

【参考方案4】:

python 命令前面的附加 & 字符也有同样的问题。 此错误已在 Python 扩展的 2019.5.18678(2019 年 6 月 5 日)版本中修复。

【讨论】:

【参考方案5】:

已确认。我也有这个问题。在 TERMINAL 中重复运行命令并手动删除运行命令开头的“&”将使代码运行。

【讨论】:

【参考方案6】:

通过将我的 Python 扩展版本降级到以前的版本来解决此问题。似乎最新版本(仅在几个小时前发布)有问题(至少对我而言)。

【讨论】:

以上是关于在 VSCode 中运行任何 Python 脚本时出现“&”语法错误?的主要内容,如果未能解决你的问题,请参考以下文章

使用右角箭头运行 python 脚本时,Vscode 给出“ModuleNotFoundError”

VSCode - 在终端和 pythonpath 中运行 Python 文件

vscode执行python代码没有任何反应

vscode怎么编译python

如何让VSCode单步执行脚本内Python语句(Mac系统)

vscode切换虚拟环境报错无法加载文件 E:Python_projectshop_envScriptsActivate.ps1,因为在此系统上禁止运行 脚本。