【问题标题】:How to Install pip for python 3.7 on Ubuntu 18?如何在 Ubuntu 18 上为 python 3.7 安装 pip?
【发布时间】:2019-07-05 03:07:39
【问题描述】:

编辑 18/02: 由于我仍然没有解决方案,我正在更新我目前所知道的。

我已经成功安装了 python 3.7。 我可以使用 pip(或 pip3)安装模块,但这些模块安装在 Python 3.6(与 ubuntu 一起提供)中。因此我无法在 python 3.7 中导入这些模块(找不到模块) Python 3.7 不识别 pip/pip3,所以无法通过 pip/pip3 安装 我需要python 3.7

--

我已经在我的 Ubuntu 18.04 机器上安装了 Python 3.7。如果相关,请遵循此说明:

从 Python 网站 [1] 下载:Python 3.7,在桌面上手动下载 解压,桌面安装:打开终端(ctrl +shift+T)

Go to the Extracted folder
$ cd ~/Desktop/Python-3.7.0
$ ./configure
$ make
$ sudo make install

将 Python 3.7 设为默认 Python :

$ sudo vim ~/.bashrc
press i
on the last and new line - Type
alias python= python3.7
press Esc
type - to save and exit vim
:wq
now type
$ source ~/.bashrc

从这里:https://www.quora.com/How-can-I-upgrade-Python-3-6-to-3-7-in-Ubuntu-18-04

我已经通过pip install module 下载了几个模块,但是当我尝试导入它们时,我得到了ModuleNotFoundError: No module names 'xx'

所以我做了一些研究,显然当使用 pip 安装时,它安装在以前版本的 Python 的模块中。 在某个地方(可能是 SO 中的一个问题),我找到了使用python3.7 -m pip install module 安装模块的建议,但后来我得到了/usr/local/bin/python3.7: no module named pip

现在我被卡住了,pip 已安装,但显然不适用于 Python 3.7。我假设如果我可以为 Python 3.7 安装 pip,我可以运行 pip install 命令并获取我需要的模块。 如果是这种情况,我该如何为 python 3.7 安装 pip,因为它已经安装了?

【问题讨论】:

    标签: python ubuntu pip


    【解决方案1】:

    pip3 不是pip。如果愿意,您可以像使用 python3 一样创建别名。

    【讨论】:

    • 同样的问题。 /usr/local/bin/python3.7: no module named pip3
    • 在您的终端中输入$ which pip$ which pip3,然后看看他们说了什么。
    • /usr/bin/pip/usr/bin/pip3
    • 好的,你到底在终端输入什么来查看错误no module named pip3或其他什么?
    • python3.7 -m pip3 install psycopg2。如果我只使用pip3 install psycopg2 它会下载模块,但我仍然无法在 Python 3.7 中导入它。
    【解决方案2】:

    一般情况下,不要这样做

    pip install package
    

    因为,正如您已经正确注意到的那样,不清楚您正在安装 package 的 Python 版本。

    相反,如果您想为 Python 3.7 安装 package,请执行此操作

    python3.7 -m pip install package
    

    package 替换为您要安装的任何名称。

    我也花了很长时间才弄明白。关于它的文档是here

    您的另一个选择是设置virtual environment。一旦您的虚拟环境处于活动状态,pythonpip 等可执行文件名称将指向正确的名称。

    【讨论】:

    • 已经试过了,输出:/usr/local/bin/python3.7: no module named pip [pip3 相同]
    • 听起来您的 Python 3.7 安装缺少 pip。您可以尝试使用:python3.7 -m ensurepip 安装它。另外,我注意到您是从源代码安装的。如果上述选项对您不起作用,那么也许可以尝试通过 apt 安装:apt install python3.7? apt 包附带安装了 pip 模块。
    • 我尝试了python3.7 -m ensurepip,它安装了,但是当我使用python3.7 -m pip install package 时出现一堆错误。因为我在虚拟机上,所以我在安装 python 3.7 之前返回并尝试了apt install python3.7,然后尝试了python3.7 -m pip install package。现在一切都很顺利。谢谢!
    • 您应该将“package”替换为您要安装的软件包的名称。
    • No module named ensurepip -_-
    【解决方案3】:

    要安装所有当前支持的 python 版本(已经预安装了 python 3.6),包括 Ubuntu 18.04 的 pip,请执行以下操作:

    要安装 python3.5 和 python3.7,请使用 deadsnakes ppa:

    sudo add-apt-repository ppa:deadsnakes/ppa
    sudo apt-get update
    sudo apt-get install python3.5
    sudo apt-get install python3.7
    

    通过分发包安装python2.7:

    sudo apt install python-minimal  # on Ubuntu 18.04 python-minimal maps to python2.7
    

    要安装 pip 使用:

    sudo apt install python-pip  # on Ubuntu 18.04 this refers to pip for python2.7
    sudo apt install python3-pip  # on Ubuntu 18.04 this refers to pip for python3.6
    python3.5 -m pip install pip # this will install pip only for the current user
    python3.7 -m pip install pip
    

    我用它为带有 tox 和 Jenkins 的 python 项目设置 CI 链。

    【讨论】:

      【解决方案4】:

      mpenkov's answer above 的快速插件(不希望它在 cmets 中丢失)

      对我来说,我必须先安装 3.6 的 pip

      sudo apt install python3-pip
      

      现在你可以安装 python 3.7

      sudo apt install python3.7
      

      然后我可以为 3.7 安装 pip

      python3.7 -m pip install pip
      

      作为奖励,安装其他模块只需在前面加上

      python3.7 -m pip install <module>
      

      编辑 1 (12/2019):

      我知道这对大多数人来说是显而易见的。但如果你想要 python 3.8,只需替换 python3.8 代替 python3.7

      编辑 2 (5/2020):

      对于那些能够升级的用户,Python 3.8 可用于几周前发布的 Ubuntu 20.04 的开箱即用。

      【讨论】:

      • 泰!完成这些步骤后,也可以调用pip3.7
      • 为什么会发生这种情况,有人能解释一下这种奇怪的行为吗?
      • 这也需要export PATH=$HOME/.local/bin:$PATH 因为python3.7 -m pip install pip 将pip 放入$HOME/.local/
      【解决方案5】:

      这对我有用。

      curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

      然后这个命令加上 sudo:

      python3.7 get-pip.py

      基于this instruction

      【讨论】:

      【解决方案6】:

      当我使用apt install python3-pip 时,我需要安装很多软件包,但我不需要它们。所以,我喜欢这样:

      apt update
      apt-get install python3-setuptools
      curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
      python3 get-pip.py
      rm -f get-pip.py
      

      【讨论】:

        【解决方案7】:

        对于那些打算使用venv的人:

        如果您还没有用于 Python 3 的 pip

        sudo apt install python3-pip
        

        安装venv包:

        sudo apt install python3.7-venv
        

        创建虚拟环境(默认使用pip 引导):

        python3.7 -m venv /path/to/new/virtual/environment
        

        要激活虚拟环境,请从虚拟环境的bin 目录中source 为当前shell 设置适当的脚本。不同 shell 的相应脚本是:

        bash/zsh – activate

        鱼——activate.fish

        csh/tcsh – activate.csh

        例如,如果使用 bash:

        source /path/to/new/virtual/environment/bin/activate
        

        可选地,为虚拟环境更新pip(当它被激活时):

        pip install --upgrade pip
        

        当您想停用虚拟环境时:

        deactivate 
        

        【讨论】:

          【解决方案8】:

          可以使用以下步骤:

          
          sudo apt-get -y update
          ---------
          sudo apt-get install python3.7
          --------------
           python3.7
          -------------
           curl -O https://bootstrap.pypa.io/get-pip.py
          -----------------
          sudo apt install python3-pip
          -----------------
          sudo apt install python3.7-venv
          -----------------
           python3.7 -m venv /home/ubuntu/app
          -------------
           cd app   
          ----------------
           source bin/activate
          

          【讨论】:

          • sudo apt-get update sudo apt-get -y update sudo apt-get install python3.7 python3.7 curl -O bootstrap.pypa.io/get-pip.py sudo apt install python3-pip sudo apt install python3.7- venv python3.7 -m venv /home/ubuntu/app cd app ---- source bin/activate
          【解决方案9】:

          我使用apt-get在ubuntu18.04安装python3.7。安装如下。

          1. 安装python3.7
          sudo apt-get install python3.7 
          
          1. 安装 pip3。需要注意的是,这可能会为python3.6安装pip3。
          sudo apt-get install python3-pip 
          
          1. 将python3的默认值更改为python3.7。这就是神奇之处,它将使 pip3 引用 python3.7。
          sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 1
          

          希望它对你有用。

          【讨论】:

          • 谢谢!这是最完整的方法,因为它涵盖了您的系统可能有另一个 python3 的事实
          【解决方案10】:

          结合@mpenkon 和@dangel 的答案, 对我有用:

          1. sudo apt install python3-pip

          2. python3.7 -m pip install pip

          第 2 步需要第 1 步(假设您还没有用于 python3 的 pip)才能运行第 2 步。它显然使用 Python3.6 的 pip 来安装 Python 3.7 的 pip。

          【讨论】:

          • 这里有个问题是sudo apt install python3-pip不保证安装python3.7,其他python3版本也一样
          • 确实如此,但奇怪的是为什么它似乎有效(我认为;根本不是 Linux 大师)。似乎需要某种类型的引导方法,因为您不能使用您不必安装您没有的软件的软件。无论如何,它确实对我有用。您是否在采用这种方法时遇到了问题?
          • 以它没有安装python 3.7的方式,是的。考虑到 Ubuntu 18.04,绝对最好的方法是使用 sudo apt install python3.7
          【解决方案11】:

          我安装了pip3 使用

          python3.7 -m pip install pip
          

          但是在使用pip3 安装其他依赖项时,它使用的是python3.6。
          你可以通过输入pip3 --version来查看

          因此,我像这样使用pip3(在上述答案之一中说明):

          python3.7 -m pip install <module>
          

          或者像这样使用它:

          python3.7 -m pip install -r requirements.txt
          

          我创建了一个 bash 别名以供以后在 ~/.bashrc 文件中使用 alias pip3='python3.7 -m pip'。如果您使用别名,请不要忘记在更改并保存后source ~/.bashrc

          【讨论】:

            【解决方案12】:

            安装 python 先决条件

            sudo apt update
            sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget
            

            安装 python 3.7(来自 ppa 存储库)

            sudo add-apt-repository ppa:deadsnakes/ppa
            sudo apt update
            sudo apt install python3.7
            

            安装 pip3.7

            sudo apt install python3-pip
            python3.7 -m pip install pip
            

            创建 python 和 pip 替代方案

            sudo update-alternatives --install /usr/local/bin/python python /usr/bin/python3.7 10
            sudo update-alternatives --install /usr/local/bin/pip pip /home/your_username/.local/bin/pip3.7 10
            

            进行更改

            source ~/.bashrc
            python --version
            pip --version
            

            【讨论】:

              【解决方案13】:

              简单点怎么样

              add-apt-repository ppa:deadsnakes/ppa
              apt-get update
              apt-get install python3.7-dev
              alias pip3.7="python3.7 -m pip"
              

              现在你有命令了

              pip3.7
              

              与 pip3 分开。

              【讨论】:

                【解决方案14】:
                curl https://bootstrap.pypa.io/get-pip.py | sudo python3.7
                

                如果一切都失败了。

                【讨论】:

                  猜你喜欢
                  • 2022-11-15
                  • 1970-01-01
                  • 2021-04-15
                  • 2017-07-28
                  • 2019-04-02
                  • 2020-03-17
                  • 1970-01-01
                  • 2021-04-13
                  • 1970-01-01
                  相关资源
                  最近更新 更多