如何在 MSYS2 中使用 Windows 版本的 Python 安装

3
我正在使用MSYS2作为Visual Studio Code中的终端,以支持GCC并使用一些在Linux环境下更容易构建的工具。但是,我想在Windows上安装Python,并使用它代替MSYS2打包的Python。我的当前解决方法是在我的.bashrc中定义以下别名:
alias python='$PYTHONPATH/../../python.exe'
alias pip='$PYTHONPATH/../../pip.exe'

我最近尝试使用venv,但出现了问题。当我在MINGW终端中输入python时,它指向的是我的Windows python而不是venv python。这显然不是一个bug,但我需要一种方法来使用Windows python而不是MSYS2 python来安装numpy、tox、matplotlib等包,因为这些MSYS2包很麻烦,目前,tox+pytest在MSYS2中无法正常工作。目前,我的解决方案适用于我在Python中所需的所有内容。

那么,我的问题是如何在没有上述hack的情况下使用Windows Python安装而不是POSIX/Windows MSYS2 Python?是否有一种方法可以定义PATH,将我的Windows Python作为MSYS2 PATH中的第一个条目?

以下是当前的情况:

$echo $PATH
/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/c/Users/Glen.Nicholls/AppData/Local/Programs/Python/Python37/Scripts:/c/Users/Glen.Nicholls/AppData/Local/Programs/Python/Python37

我希望知道如何将它变成以下形式,即从MSYS2中删除Python,或者找到另一种方法来完成这个任务。
/c/Users/Glen.Nicholls/AppData/Local/Programs/Python/Python37/Scripts:/c/Users/Glen.Nicholls/AppData/Local/Programs/Python/Python37:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:...
1个回答

6
你需要在msys2系统变量之前添加路径/c/Users/Glen.Nicholls/AppData/Local/Programs/Python/Python37/c/Users/Glen.Nicholls/AppData/Local/Programs/Python/Python37/Scripts。因为终端命令可能有些棘手,所以我将使用控制面板来更轻松地完成。以下是如何操作的屏幕截图说明(抱歉无法插入图片,只能提供链接):
首先,用Windows+S键打开搜索框。picture1 然后,在窗口中选择“环境变量”选项。picture2 接下来,在底部区域选择PATH系统变量,并选择“编辑”(上面是用户PATH,下面是系统PATH)。picture3 这是修改前的样子:-- picture4 然后,选择C:/Users/Glen.Nicholls/AppData/Local/Programs/Python/Python37,并点击“向上移动”,直到完成。同样地,对“C:/Users/Glen.Nicholls/AppData/Local/Programs/Python/Python37/Scripts”进行相同操作,使其位于顶部。picture5 现在的样子是这样的:-- picture6 完成后,重新启动终端,希望它能正常工作。:D

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