Macos系统Python多版本管理和Pip管理

本文最后更新于:2024年9月16日 下午

系统概况

  1. macos蒙特雷,系统自带Python3.9.6

  2. 通过安装包安装了Python3.10

  3. brew install autojump 时作为依赖包安装了Python3.11

  4. 查看所有安装的Python

    1
    2
    3
    4
    5
    6
    7
    8
    ls /usr/local/bin | grep python3
    # 会列出所有自己安装的版本,但是不包括系统自带的,系统自带的是/usr/bin/python3

    /usr/bin/python3 --version
    # 显示系统自带的Python版本

    python3 --version
    # 显示现在系统默认使用的Python版本

处理

  1. 卸载多余的3.10版本

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    sudo rm -rf /Library/Frameworks/Python.framework/Versions/X.Y.Z
    sudo rm -rf "/Applications/Python X.Y.Z"
    sudo rm /usr/local/bin/pydoc3.X
    sudo rm /usr/local/bin/python3.X
    sudo rm /usr/local/bin/python3.Xm
    # 其中 `X.Y.Z` 是要卸载的 Python 版本号。例如,如果要卸载 Python 3.8.10,则应将 `X.Y.Z` 替换为 `3.8.10`。请注意,这些命令需要管理员权限才能执行(使用 `sudo` 命令)。

    #(可选)您还可以使用以下命令,删除与卸载的 Python 版本相关的任何残留文件或目录
    sudo rm -rf ~/Library/Python/X.Y
    sudo rm -rf /Library/Python/X.Y
    # 其中 `X.Y` 是要卸载的 Python 版本号。
  2. 想卸载3.11版本,但是作为autojump的依赖,不知道怎么弄,暂时放弃

  3. 此时再来python3 --version 查看现在系统用的版本,我这里变成了3.11

  4. 关联命令 python3 为指定版本

    1
    2
    3
    4
    5
    nano ~/.zshrc
    # 根据自己使用的终端程序更改,蒙特雷默认使用的是zsh

    alias python3='/usr/bin/python3'
    # 指定为系统自带的3.9.6版本

    记得 source ~/.zshrc 使更改生效

  5. 为了安装 pix2text ,其依赖包 torch 版本要求为1.8.0~2.0,使用pip安装时总是找到2.0.1的版本,因此需要使用老版本的Pip,刚好退回到python3.9.6的版本

    1
    2
    nano /usr/local/bin/pip
    # 会看到如下的代码
    1
    2
    3
    4
    5
    6
    7
    8
    #!/usr/local/bin/python3
    # -*- coding: utf-8 -*-
    import re
    import sys
    from pip._internal.cli.main import main
    if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(main())

    将第一行的 #!/usr/local/bin/python3 修改为你想要的Python版本的路径就好了,例如修改为 #!/usr/bin/python3这样Pip默认关联的就是系统自带版本的Python也就是3.9.6了。

    后记

    折腾了一圈,目的其实就是为了安装 torch 的1.8版本,貌似直接修改Pip的默认Python就可以了吧,不过顺带清理了一下系统多余的Python版本,也对各个版本的Python安装的位置也有了大概的了解。


Macos系统Python多版本管理和Pip管理
https://andyppang.github.io/2023/05/11/Macos系统Python多版本管理和Pip管理/
作者
PL
发布于
2023年5月11日
许可协议