我的(工作)计算机最近从 Win 10 更新到 Win 11。在大多数情况下,这个过程很顺利,但 Python 给我带来了痛苦。
我需要运行多个版本的 Python(2.7 - 用于旧版本 - 以及一堆 3.x),因此我为需要运行的 Python 版本和环境配置了虚拟环境。
在 Windows 10 下,在命令窗口中运行 python 脚本时,我需要为其添加前缀“py”。我的解决方案是创建一个批处理文件来为我想要运行的任何版本的 python 启动命令窗口。 该批处理文件将扩展名为 .py 的文件与 python 启动器“py”相关联,然后激活相应的虚拟环境。即
assoc .py=Python.File
ftype Python.File="C:\Windows|py.exe" "%1" %*
...
<path to virtual env>\Scripts\activate.bat
这在 Windows 10 中运行良好。当我想运行脚本时,我只需输入
现在在 Windows 11 下,使用相同的启动脚本,我需要在每个脚本前面加上“python”前缀,然后才能运行。
Python 安装或虚拟环境是在 Win 11 更新之前存在还是在 Win 11 更新之后安装/创建并不重要 - 两者的行为是相同的。
我在这里或更广泛的互联网上没有遇到任何类似行为的报告。
我最近也为此苦苦挣扎。 我找到的解决方案是确保与 Python 文件关联的“Python”版本是图标中带有火箭的版本。