Gil*_*son 18 python ubuntu pip ubuntu-20.04
Ubuntu 20.04 附带 Python 3.8。我无法卸载 Python 3.8但我需要 Python 3.9
我继续从以下位置安装了 Python 3.9:
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt 安装 python3.9
如何为 python 3.9 安装 pip?
安装 pip using
sudo apt-get install python3-pip对我不起作用,因为它为 python 3.8 安装了 pip
使用安装 pippython3.9 get-pip.py出现错误:
~/python_tools$ python3.9 get-pip.py
Traceback (most recent call last):
File "/home/ubuntu/python_tools/get-pip.py", line 23704, in <module>
main()
File "/home/ubuntu/python_tools/get-pip.py", line 198, in main
bootstrap(tmpdir=tmpdir)
File "/home/ubuntu/python_tools/get-pip.py", line 82, in bootstrap
from pip._internal.cli.main import main as pip_entry_point
File "<frozen zipimport>", line 259, in load_module
File "/tmp/tmpkwyc8h7j/pip.zip/pip/_internal/cli/main.py", line 10, in <module>
File "<frozen zipimport>", line 259, in load_module
File "/tmp/tmpkwyc8h7j/pip.zip/pip/_internal/cli/autocompletion.py", line 9, in <module>
File "<frozen zipimport>", line 259, in load_module
File "/tmp/tmpkwyc8h7j/pip.zip/pip/_internal/cli/main_parser.py", line 7, in <module>
File "<frozen zipimport>", line 259, in load_module
File "/tmp/tmpkwyc8h7j/pip.zip/pip/_internal/cli/cmdoptions.py", line 18, in <module>
ModuleNotFoundError: No module named 'distutils.util'
Run Code Online (Sandbox Code Playgroud)
Sha*_*hop 42
您可以pip通过以下方式为 python 3.9安装:
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3.9 get-pip.py
Run Code Online (Sandbox Code Playgroud)
重要的是您使用python3.9而不仅仅是python3, 以确保pip为 python 3.9 安装。
如果您看到任何权限错误,您可能需要使用
python3.9 get-pip.py --user
Run Code Online (Sandbox Code Playgroud)
如果您No module named 'distutils.util'在运行时遇到错误python3.9 get-pip.py,并且您使用的是基于 Debian 的 Linux 发行版,请运行
sudo apt install python3.9-distutils
Run Code Online (Sandbox Code Playgroud)
然后重新运行您的get-pip.py命令。如果您使用的不是基于 Debian 的发行版,请为您的发行版的包管理器使用等效的命令。
Eri*_*ton 34
仅依赖于的替代方法deadsnakes/ppa是安装python3.9-venv.
sudo apt-get install python3.9-venv
python3.9 -m venv venv
source venv/bin/activate
pip --version
# pip 21.1.3 from /home/.../venv/lib/python3.9/site-packages/pip (python 3.9)
Run Code Online (Sandbox Code Playgroud)
也许随着时间的推移更容易保持一致,但强制进入 Virtualenv。
这种方法在 Ubuntu 18 上出现了一个问题。针对 OP 目标(20.04)的线程中的其他建议不起作用。PyPa 的安装脚本在 Ubuntu 18 上结束为:
python3.9 get-pip.py
# ...
# AttributeError: 'HTMLParser' object has no attribute 'unescape'
Run Code Online (Sandbox Code Playgroud)
Pip 默认包含在 python 3.4 及更高版本中。
python3.9 -m pip --version
Run Code Online (Sandbox Code Playgroud)
如果由于某种原因未安装 pip,您可以使用 get-pip 手动安装它:
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3.9 get-pip.py
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23417 次 |
| 最近记录: |