Pyenv 安装 & 使用

cnblogs 2024-10-16 08:39:01 阅读 65

目录

    <li>简介
  • 如何安装
    • 1. 获取Pyenv
    • 2. 设置环境变量
    • 3. 重启 shell
  • 使用指南
    • 安装一个 Python 版本。
    • 切换 Python 版本。
    • 卸载 Python 版本。
    • 更新 Pyenv
  • Pyenv-virtualenv
    • 安装
    • 创建虚拟环境
    • 激活虚拟环境
    • 删除虚拟环境

简介

Pyenv 是一款 Python 的版本管理工具,是使用纯 Shell 脚本编写的。

Terminal output example

Pyenv 的主要功能:

    <li>安装多个 Python 版本:用户可以轻松安装各种版本的 Python,包括官方的 CPython、Anaconda、PyPy 等。
  1. 版本切换:通过简单的命令,用户可以在全局项目shell 会话中切换 Python 版本。
  2. 虚拟环境支持:结合 ⁠pyenv-virtualenv 插件,用户可以创建和管理虚拟环境,更加方便地隔离项目依赖。
  3. 简化管理:提供简单的命令行工具,使得安装、卸载和切换 Python 版本变得更加直观。

如何安装

1. 获取Pyenv

  • macOS:

    <code>brew update

    brew install pyenv

    li>
  • 自动安装器,用于包括 macOS 和 Linux 在内的类 Unix 系统:

    curl https://pyenv.run | bash

    如果通过这种方式安装,可能需要安装必要的构建工具。

    https://github.com/pyenv/pyenv/issues/2888

    sudo apt install build-essential libssl-dev zlib1g-dev \

    libbz2-dev libreadline-dev libsqlite3-dev curl \

    libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev

2. 设置环境变量

如果使用 zsh, 将以下文本添加至~/.zshrc~/.zprofile 中。bash同理。

export PYENV_ROOT="$HOME/.pyenv"code>

[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"code>

eval "$(pyenv init -)"

注:如果有更多需求,请看原文。

比如,有些系统(如Cent OS)的 bash 可能会进入无限循环。Debian/Ubuntu 无此问题。

3. 重启 shell

或者

source ~/.zshrc

使用指南

安装一个 Python 版本。

pyenv install 3 # 安装最新的 3.x.x

pyenv install 3.13 # 安装最新的 3.13.x

pyenv install 3.13.2 # 安装指定的

当然,你也可以使用 pyenv install -l 来看所有可用的版本,特别是其他 python 的各种分支。

使用 pyenv latest -k <prefix> 可以查看某个前缀在安装的时候会被补全为什么样子。

当使用不完全的前缀的时候,pyenv install 安装最新的可用版本,其他指令对应的是最新的已安装的版本。

切换 Python 版本。

使用以下指令可以用来切换 pyenv 安装的 python,优先级从上到下依次降低。

如果版本指定的是 system,或者没有指定,则使用系统自带的python。

    <li>

    pyenv shell:仅对当前 shell 会话生效,优先级最高。

    原理:export PYENV_VERSION=<version>

  • pyenv local:对当前目录及其子目录生效。

    原理:对 ./.python-version 文件进行写入,对当前目录或者最近的父目录进行读取。

  • pyenv global:对当前用户生效。

    原理:对 $PYENV_ROOT/version 文件进行写入和读取。

更多用法,请看:https://github.com/pyenv/pyenv/blob/master/COMMANDS.md

或者 pyenv help shell/local/global

卸载 Python 版本。

pyenv uninstall <version>

更新 Pyenv

更新可以获取最新的 Python 版本列表。

  • 如果是 brew 安装的:brew upgrade pyenv
  • 否则:pyenv update

Pyenv-virtualenv

Github 地址

安装

**Brew: ** 如果 pyenv 是通过 brew 安装的,则该插件也使用 brew 安装

brew install pyenv-virtualenv

否则,使用如下方法。

git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv

安装完毕之后,在shell 的 .rc 文件中添加:

eval "$(pyenv virtualenv-init -)"

创建虚拟环境

pyenv virtualenv <python_version> <vertualenv_name>

# or

pyenv virtualenv <vertualenv_name> # 使用当前激活的 python 版本

激活虚拟环境

创建后,如果使用pyenv local <name>,则下次会自动激活该虚拟环境。

pyenv activate <name> # 作用和 pyenv shell <name> 差不多,但是后者无法被 deactivate

pyenv deactivate

删除虚拟环境

pyenv uninstall <name>

# or

python virtualenv-delete <name>



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。