【问题标题】:VSCode: There is no Pip installer available in the selected environmentVSCode:所选环境中没有可用的 Pip 安装程序
【发布时间】:2018-12-02 06:19:54
【问题描述】:

我正在尝试在 VSCode 中的 Python 文件上运行 autopep8 linter。

我已按照此处的说明进行操作:https://code.visualstudio.com/docs/python/environments 并选择了我的口译员 (⇧⌘P):/usr/local/bin/python

然后我尝试格式化我的代码,VSCode 说 autopep8 没有安装,可以通过 Pip 安装。但是,当我尝试通过 Pip 安装时,它会显示 There is no Pip installer available in the selected environment

然后我尝试通过从命令面板中选择 Python: Create Terminal 在当前环境中启动终端。

终端可以正常打开,pip 存在,我什至可以在 VSCode 中打开的终端中使用 pip install autopep8,但是当我尝试运行 Format Document 命令时,我得到了与autopep8pip 相同的错误在环境中不可用。

【问题讨论】:

  • 你在什么平台上,你用什么 Python,你是怎么安装的?如果你在 Linux 上,你可能已经安装了一个发行版 Python 包,它将 pip 拆分成一个单独的包,比如python-pip,在这种情况下你需要安装它。如果您在 macOS 上,您可能正在使用 Apple 预装的 Python,它不附带 pip(在这种情况下,您确实应该安装单独的 Python,但如果您真的想要,您可以为此安装 pip一)。以此类推。
  • 或者,如果您只是使用真正旧版本的 Python(2.7.9 或 3.0-3.3 之前的版本),那么那时 pip 还没有。在这种情况下,如果您无法升级到较新的 Python(并且您没有使用 Linux 发行版安装的 Python),则需要使用 get-pip.py
  • 我在 Mac OS X 上,最新版本,我使用的是通过 Homebrew 安装的 Python 3.6,它肯定有 pip。我什至可以从终端内部访问 pip,我可以在 VSCode 内部启动。我能够更新我的用户设置以使其工作:``` "python.formatting.autopep8Path": "/usr/local/bin/autopep8", "python.linting.pylintPath": "/usr/local/ bin/pylint" } ``` 但我不是它的忠实粉丝......
  • 使用 Homebrew 安装 Python 3.6 真的会创建一个 /usr/local/bin/python 而不仅仅是 /usr/local/bin/python3 吗? (以前他们有单独的python2和python3包的时候不支持,但我最近没用过。)
  • 更重要的是(因为最后一个问题可能不会有帮助......),请在您的问题中编辑有关平台等的信息,而不仅仅是将其放在评论中。而且,只是为了确保:当你做“选择环境”的事情时,我假设 VSCode 正确地将它标记为“Python 3.6(64 位)Python 软件基金会”,而不仅仅是它在混淆时使用的标签解释器版本,对吧?

标签: python visual-studio-code pip vscode-settings


【解决方案1】:

(在 mac 上)如果你使用的是 python3 但 vscode 告诉你 pip 没有安装,你可以在 vscode 底部更改 python 版本。 而且我猜你正在使用另一个终端但不是 bash ,vscode的默认终端是bash。 Bash 不知道你已经安装了 pip@2。

【讨论】:

  • 截至VSCode版本:1.49.1,官方终端为zsh
【解决方案2】:

在 Ubuntu16.04 上,我在 vscode 中使用 Python3 和

apt-get install python3-pip

解决了我的问题。

那是因为我发现:在我的终端下,我输入了pip -V。它显示它适用于 Python2,而不是 Python3。

【讨论】:

    【解决方案3】:

    1.选择文件 > 首选项 > 设置命令 (⌘,) 打开您的用户设置。

    2.根据您的要求搜索并创建或修改 python.pythonPath 的条目,其中包含 Python 可执行文件的完整路径。例如,我将其更改为 python2.6 路径到此路径 /usr/local/bin/python3 .

    【讨论】:

      【解决方案4】:

      你只能更改解释器。

      进入(ctrl + shift + p),然后输入Python:选择Interpreter,这样你就可以选择你的扩展需要的版本。

      这对我有用。

      【讨论】:

      • 谢谢!!这个也对我有用。
      【解决方案5】:

      在 Ubuntu 上:

      确保您已安装 Python 和 pip。

      转到设置,在搜索输入中键入 python.py。这应该会找到 Python 路径设置。

      删除此路径(如果当前已设置),保存。退出代码并将其设置为当前值。

      对我来说是 /usr/bin/python3

      【讨论】:

        【解决方案6】:

        试试 Ctrl+Shift+P 然后输入

        Python: Select Interpreter
        

        并选择python版本。

        【讨论】:

          【解决方案7】:

          我有多个 python 版本:

          2.7
          3.6
          3.7
          
          1. 告诉 vscode/visual studio 代码,使用哪个版本:

          按以下(显示所有命令):Ctrl + Shift + P
          粘贴以下内容:Python: Select Interpreter
          选择它显示的版本之一,我选择了 python 3.7.3 64-bit

          1. 在设置中更新 python 路径:

          Ctrl + ,打开设置
          搜索 python.pythonPath
          python 更改为 /usr/bin/python3.7

          注意:这可能不需要,但是,请确保 /usr/bin/python3.7 确实为您存在,您可能有不同的路径,例如 /usr/local/bin/python3.7 等。

          1. 我有pip但它是2.7,但由于我选择python 3,它的pip需要安装

          在终端中运行以下命令:apt-get install python3-pip

          1. 重启 vscode

          通过以上步骤,所有问题都解决了。希望对您有所帮助。

          【讨论】:

          • 宾果游戏!谢谢。
          • 很高兴知道它有帮助。
          • 这也适用于 Windows。使用以下路径 C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python37_64
          • @Rey 很高兴它几乎按原样工作。您的评论对 Windows 用户有很大帮助。?
          【解决方案8】:

          安装 python3-pip 为我解决了这个问题。

          apt-get install python3-pip
          

          【讨论】:

            【解决方案9】:

            对于 Windows 系统检查环境变量>系统变量 检查 Python 路径的 Path 变量。(如果没有找到,请设置 Python 的路径变量)

            复制路径粘贴到vscode>file>preferences>settings>python.pythonPath下

            它对我有用。

            【讨论】:

              【解决方案10】:

              对于 WSL 用户:

              如果你的工作文件在 linux 子系统路径中,你仍然需要 pip for windows 以便 VSCode 使用它。

              【讨论】:

              • 我在 Ubuntu 20 上运行 WSL 2,在 Ubuntu 中安装 python 3 可以解决这个问题。
              【解决方案11】:

              我在学习 django 时遇到了这个问题,终端不允许我 pip 安装任何东西。

              在 shell 中创建一个虚拟环境,然后使用环境的路径作为解释器。这对我有用。

              注意:您可能希望在完全不同的 shell 中创建环境,然后将环境的文件夹上传到 vscode。 然后你打开环境文件夹中的设置文件。

              此图片有望为您提供一个好主意。 Click Here

              【讨论】:

                【解决方案12】:

                我在 docker 容器中遇到了类似的 pylint 问题。我意识到 VS-Code 提示的 pylint 安装对我不起作用的原因是因为我使用的是全局 python 安装(无论如何,在我的 docker 容器中是全局的),这可能需要提升权限来安装东西,而 VS 代码是'不在容器中以 root 身份运行。根据the vs code python extension docs

                注意:如果您使用的是全局环境并且 VS Code 未运行提升,则 linter 安装可能会失败。在这种情况下,要么运行提升的 VS 代码,要么手动运行 Python 包管理器以在提升的命令提示符处为同一环境安装 linter:例如 sudo pip3 install pylint (macOS/Linux) 或 pip install pylint (Windows, at提升的提示)

                【讨论】:

                  【解决方案13】:

                  我今天遇到了同样的问题,没有一个解决方案对我有帮助。最终,我自己想通了。

                  我正在为遇到此问题的人发布此答案。只需转到您的 ./venv 文件夹,您就会找到一个 .cfg 文件。

                  只需确保 include-system-site-packages 设置为 true

                  home = /usr/bin
                  include-system-site-packages = true
                  version = 3.8.5
                  

                  如果还是不行,就在终端运行一次sudo install python-3 pip

                  【讨论】:

                    【解决方案14】:

                    尝试使用 autopep8 时遇到此问题。对我来说 - 它与 pip 无关(我知道它已安装)但 VScode python 扩展使用的路径。

                    如果您打开扩展程序并转到它的设置并向下滚动,您可以为 autopep8 指定一个路径:Python › 格式:Autopep8 路径

                    我使用了这些文档推荐的路径:

                    https://code.visualstudio.com/docs/python/editing#_formatting

                    这是:python.formatting.autopep8Args

                    我停止收到错误。

                    【讨论】:

                      猜你喜欢
                      • 2019-07-20
                      • 1970-01-01
                      • 1970-01-01
                      • 2017-06-21
                      • 1970-01-01
                      • 2019-01-13
                      • 1970-01-01
                      • 1970-01-01
                      • 2021-12-16
                      相关资源
                      最近更新 更多