Python3的符号链接不起作用(在Windows上)

时间:2018-03-28 17:08:54

标签: python python-3.x

我尝试从Windows上的符号链接运行python3,但它不起作用!

我的计算机上安装了多个版本的Python,例如Python 2.7和Python 3.6和3.6 64位。它们安装在G:\Developer\Python\2.7中,依此类推。

我使用符号链接来运行特定的python版本。在G:\Developer\Python中是符号链接 python2.exe python3.exe python36x64.exe 等等。

要创建这些符号链接,我使用Link Shell Extension

在安装路径中运行原始python.exe(例如G:\ Developer \ Python \ 3.6 \ python.exe)可以正常运行。针对python2的符号链接也按预期工作,但python3链接不起作用。在Powershell终端中,它们什么都不做(没有错误信息,没有输出)。在Windows命令行窗口中,尝试启动它们会给我这个错误消息(下面的翻译):

enter image description here

代码无法执行,因为找不到python36.dll。重新安装可能会解决问题。

所以我不确定如何并排安装多个python版本?

提前致谢! 米莎

1 个答案:

答案 0 :(得分:1)

事情比Windows更糟糕(或更好)。在传统的Windows安装中,Python可执行文件使用注册表,环境或可执行文件的目录来定位其安装路径。这意味着符号链接将破坏该搜索..

但在Windows上处理多个安装的标准方法是Python附带的py.exe启动器> 3.3。如果您安装所有用户或至少要求安装人员为所有用户安装启动器(推荐),它将在默认路径下可用(我的3.6版本安装在Windows目录)。

现在没有更多配置,如果你没有传递版本选项,你可以用py -2.7启动Python 2.7,用py -3.6启动Python 3.6,

  

启动程序将正确选择最合适的Python版本。它更喜欢按系统安装的每用户安装,而不是使用最新安装版本的语言版本的订单

     

...

     

如果您需要安装最新版本的Python 2.x,请尝试以下命令:

     
py -2

我目前没有32位和64位版本并排,所以我无法测试,但可以通过PY.INI文件进一步配置

reference doc for Python launcher