首页 > 解决方案 > 如何在 MSYS2 中使用 Windows Python 安装

问题描述

我在 Visual Studio Code 中使用 MSYS2 作为终端来支持 GCC,并使用一些在 Linux 环境中更容易构建的工具。但是,我想在 Windows 上安装 Python 并使用它而不是使用 MSYS2 打包的 Python。我当前的解决方法是在 my 中定义以下别名.bashrc

alias python='$PYTHONPATH/../../python.exe'
alias pip='$PYTHONPATH/../../pip.exe'

我最近尝试使用 venv,这会导致问题,因为当我python从 MINGW 终端键入时,它指向我的 Windows python 而不是 venv python。这显然不是一个错误,但我需要一种方法来使用 Windows python 而不是 MSYS2 python 来处理 numpy、tox、matplotlib 等包,因为这些包的 MSYS2 包令人头疼,目前,MSYS2 中的 tox+pytest 没有工作。目前,我上面的解决方案适用于我在 Python 中投入的所有内容。

所以,我的问题是如何在没有上述技巧的情况下使用我的 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:...

标签: pythonmingwmsys2

解决方案


您必须将路径放在 msys2 上的路径之前,对吗/c/Users/Glen.Nicholls/AppData/Local/Programs/Python/Python37/c/Users/Glen.Nicholls/AppData/Local/Programs/Python/Python37/Scripts然后我不会尝试使用终端,因为它太棘手了,所以,我将使用控制面板更容易地做到这一点。这是一些屏幕截图,我将如何为您做到这一点。

(抱歉放不了图片,只能放链接,因为我是新会员,所以放不了图片。另外,抱歉说明太详细了。)

Windows首先,用+S键 打开搜索框。图片1

然后,从窗口中选择环境变量选项。图2

然后,在底部选择PATH系统变量,并选择edit(上为用户PATH,下为系统PATH图3

这是以前的样子:--图4

然后,选择 C:/Users/Glen.Nicholls/AppData/Local/Programs/Python/Python37 并单击“上移”直到完成。同样,对“C:/Users/Glen.Nicholls/AppData/Local/Programs/Python/Python37/Scripts”执行相同操作,直到它位于顶部。图5

这是现在的样子:--图6

完成后,重新启动终端,希望它可以工作。:D


推荐阅读