📚 主要概念
- Pyenv: 这是一个用于管理多个 Python 版本的工具,让你能在同一台电脑上灵活切换。
- Virtualenv: 这个工具用于创建独立的 Python 环境,以隔离不同项目的依赖。
- Pyenv-virtualenv: 这是一个 Pyenv 的插件,它整合了 Pyenv 和 Virtualenv 的功能,以便轻松管理多个 Python 版本及其独立的环境。
🌱 由来与发展
Pyenv 和 Virtualenv 最初是两个独立的项目,都旨在解决 Python 环境管理的问题。Pyenv-virtualenv 是随后推出的,目的在于整合这两个工具的优势,从而更加高效地在一个系统内管理多个 Python 版本和依赖环境。
🎯 功能与应用
- 创建虚拟环境: 你可以轻松创建具有特定 Python 版本的环境。
- 激活与停用: 切换项目时,你可以轻松地切换到相应的环境。
- 依赖管理: 不同项目之间,不会因为依赖库版本的不同而冲突。
- 全局与局部设置: Pyenv-virtualenv 支持为每个项目或者目录定制 Python 版本。
🛠 使用方法
-
安装: 通常,你可以通过包管理器(比如 Homebrew)来安装。
brew install pyenv-virtualenv -
创建虚拟环境: 使用 Python 3.9 创建一个名为
my_env的环境。pyenv virtualenv 3.9.0 my_env -
激活虚拟环境:
pyenv activate my_env -
停用虚拟环境:
pyenv deactivate -
查看所有虚拟环境:
pyenv virtualenvs -
删除虚拟环境:
pyenv uninstall my_env
🐟 Fish 配置
如果你是 Fish Shell 的用户,请按照以下方法配置:
echo "# pyenv-virtualenv" >> ~/.config/fish/config.fish
echo "status --is-interactive; and pyenv virtualenv-init - | source" >> ~/.config/fish/config.fish
echo "# pyenv-virtualenv 禁用消息" >> ~/.config/fish/config.fish
echo "set -gx PYENV_VIRTUALENV_DISABLE_PROMPT 1" >> ~/.config/fish/config.fish
🐚 更换 Python 源
为了加速 Python 的安装过程,你可以设置环境变量 PYTHON_BUILD_MIRROR_URL,选择下面列出的镜像地址之一:
https://npm.taobao.org/mirrors/python/https://mirrors.huaweicloud.com/python/https://mirror.bjtu.edu.cn/python/https://jedore.netlify.app/tools/python-mirrors/https://jedore.vercel.app/tools/python-mirrors/
1️⃣ 在 CMD 中使用 set
该方法仅在当前打开的 CMD 会话中有效。
set PYTHON_BUILD_MIRROR_URL=https://mirrors.huaweicloud.com/python/
2️⃣ 在 CMD 中使用 setx
该方法会在所有新启动的 CMD 会话中永久生效。
setx PYTHON_BUILD_MIRROR_URL "https://mirrors.huaweicloud.com/python/"
3️⃣ 在 PowerShell 中使用 $env:
该方法仅在当前打开的 PowerShell 会话中有效。
$env:PYTHON_BUILD_MIRROR_URL = "https://mirrors.huaweicloud.com/python/"
4️⃣ 在 PowerShell 中使用 [Environment]::SetEnvironmentVariable()
该方法会在所有新启动的 PowerShell 会话中永久生效。
[Environment]::SetEnvironmentVariable('PYTHON_BUILD_MIRROR_URL', 'https://mirrors.huaweicloud.com/python/', [EnvironmentVariableTarget]::User)
推荐使用$env:PYTHON_BUILD_MIRROR_URL = "https://mirrors.huaweicloud.com/python/",设置完环境变量后,别忘了执行 pyenv update 来应用新的设置。
📦 更换 pip 源
为了加快 Python 包的下载速度,你可以通过更换 pip 的镜像源来实现。以下是一些常用的镜像地址:
- 豆瓣:
https://pypi.doubanio.com/simple/ - 阿里云:
https://mirrors.aliyun.com/pypi/simple/ - 清华大学:
https://pypi.tuna.tsinghua.edu.cn/simple/ - 华为:
https://mirrors.huaweicloud.com/repository/pypi/simple
1️⃣ 在 CMD 中使用 pip 命令
该方法仅针对单次的 pip 操作有效。
pip install -i https://mirrors.huaweicloud.com/repository/pypi/simple/ some-package
2️⃣ 修改 pip 配置文件
该方法会对所有的 pip 操作永久生效。
-
Windows:在
C:\Users\<用户名>\pip\pip.ini文件中添加:[global] index-url = https://mirrors.huaweicloud.com/repository/pypi/simple/ -
macOS/Linux:在
~/.pip/pip.conf文件中添加:[global] index-url = https://mirrors.huaweicloud.com/repository/pypi/simple/
3️⃣ 在 PowerShell 中使用环境变量
该方法仅在当前的 PowerShell 会话中有效。
$env:PIP_INDEX_URL = "https://mirrors.huaweicloud.com/repository/pypi/simple/"
4️⃣ 在 fish shell 中设置环境变量
该方法会在新启动的 fish shell 会话中生效。
set -Ux PIP_INDEX_URL https://mirrors.huaweicloud.com/repository/pypi/simple/
完成以上设置后,你可以使用 pip install some-package 来验证新的源是否已经生效。