pyenv 是一个简单但功能强大的工具,可让您管理系统上的多个 Python 版本。作为一名 Python 开发人员,您经常需要处理需要不同 Python 版本的不同项目。手动管理这些版本可能很麻烦并且容易出错。这就是 pyenv 的用武之地,它可以轻松地在 Python 版本之间切换,确保您的项目始终在正确的版本上运行。
版本管理:轻松安装和切换不同的Python版本。
项目隔离:确保每个项目使用正确的Python版本,避免兼容性问题。
灵活性:在多个 Python 版本上轻松测试您的代码。
如果您曾经遇到过版本冲突的问题,或者必须在同一台计算机上同时使用 Python 2.x 和 3.x,您将会欣赏 pyenv 如何简化您的开发工作流程。
pyenv 与 Poetry 配合得非常好,Poetry 是一个管理依赖项和 Python 环境的工具。如果您已经熟悉 Poetry(如果您不熟悉,请查看我关于 Poetry 入门的文章),您会发现将其与 pyenv 结合使用可以让您更好地控制您的项目。
当您使用 Poetry 创建新项目时,它会自动使用 pyenv 为目录设置的 Python 版本。这可确保在符合您的项目要求的环境中管理您的项目依赖项。
让我们从安装 pyenv 开始。安装过程因您的操作系统而异。
使用自制程序:
brew update brew install pyenv
为了避免它们意外链接到 Pyenv 提供的 Python,请将以下行添加到交互式 shell 的配置中:
alias brew='env PATH="${PATH//$(pyenv root)\/shims:/}" brew'
alias brew="env PATH=(string replace (pyenv root)/shims '' \"\$PATH\") brew"
curl https://pyenv.run | bash
安装后,将以下内容添加到 shell 配置文件(例如 .bashrc、.zshrc)中:
export PATH="$HOME/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
sudo pacman -S pyenv
通过在终端中运行以下命令将命令添加到 ~/.bashrc:
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc echo 'eval "$(pyenv init -)"' >> ~/.bashrc
对于 Zsh:
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc echo 'eval "$(pyenv init -)"' >> ~/.zshrc
对于鱼:
如果您有 Fish 3.2.0 或更高版本,请以交互方式执行此操作:
set -Ux PYENV_ROOT $HOME/.pyenv fish_add_path $PYENV_ROOT/bin
否则,执行下面的代码片段:
set -Ux PYENV_ROOT $HOME/.pyenv set -U fish_user_paths $PYENV_ROOT/bin $fish_user_paths
现在,将其添加到 ~/.config/fish/config.fish:
pyenv init - | source
有关更多详细信息,请查看他们的 GitHub。
1) 检查Python版本
查看当前使用的Python版本:
❯ pyenv versions * system (set by /home/shanu/.pyenv/version)
2) 安装Python版本
使用pyenv,您可以轻松安装任何版本的Python:
❯ pyenv install 3.11.9
安装python版本后,可以对项目进行全局或本地设置
3) 设置全局Python版本
不推荐,可能会导致您的系统出现问题
您可以设置一个全局Python版本,该版本将在您的系统中默认使用:
pyenv global 3.10.6
4) 设置本地Python版本
您还可以为特定项目目录设置本地Python版本。当您位于该目录中时,此版本将覆盖全局版本:
❯ pyenv local 3.8.10 ❯ pyenv versions system * 3.11.9 (set by /home/shanu/test_folder/.python-version) ❯ python -V Python 3.11.9 (my global version is 3.12.5)
要取消设置,只需运行:
❯ pyenv local --unset ❯ pyenv versions * system (set by /home/shanu/.pyenv/version) 3.11.9 ❯ python -V Python 3.12.5
5) 卸载Python版本
卸载不再需要的Python版本:
pyenv uninstall 3.11.9
Pyenv 对于 Python 开发人员来说是一个非常宝贵的工具,特别是与 Poetry 结合使用时。通过轻松管理Python版本,它可以让您专注于编写代码而不用担心版本冲突。在你的下一个 Python 项目中尝试一下吧!
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3