Skip to content

Instantly share code, notes, and snippets.

@aispin
Last active August 11, 2024 16:45
Show Gist options
  • Save aispin/886c8aa839075651df5bd499201ffabc to your computer and use it in GitHub Desktop.
Save aispin/886c8aa839075651df5bd499201ffabc to your computer and use it in GitHub Desktop.
Python tutorials - Usage of pyenv along with virtualenv

如何将存放在.env中的GH_TOKEN传给build_readme.py脚本?

步骤一:安装 python-dotenv

首先,确保您已经安装了 python-dotenv 库。如果没有安装,可以使用以下命令进行安装:

pip install python-dotenv

步骤二:创建 .env 文件

在项目根目录下创建一个 .env 文件,并添加 GH_TOKEN 环境变量:

GH_TOKEN=your_github_token_here

步骤三:修改 build_readme.py 脚本

build_readme.py 脚本中,使用 python-dotenv 来加载 .env 文件中的环境变量。

from dotenv import load_dotenv

# 加载 .env 文件中的环境变量
load_dotenv()


# 从环境变量中获取 GH_TOKEN
TOKEN = os.environ.get("GH_TOKEN", "")

pyenvvirtualenv 是互相可替代的工具吗

pyenvvirtualenv 并不是互相可替代的工具,它们有不同的用途,但可以一起使用来更好地管理 Python 环境。

pyenv

pyenv 是一个用于管理多个 Python 版本的工具。它允许您安装和切换不同的 Python 版本,但它不管理包依赖。主要功能包括:

  • 安装不同版本的 Python。
  • 切换全局或本地(项目级别)使用的 Python 版本。
  • 管理多个 Python 版本的并存。

virtualenv

virtualenv 是一个用于创建隔离的 Python 环境的工具。它允许您为每个项目创建独立的环境,每个环境都有自己的 Python 解释器和包集合。主要功能包括:

  • 创建隔离的 Python 环境。
  • 管理项目的包依赖,避免包版本冲突。

一起使用 pyenvvirtualenv

您可以将 pyenvvirtualenv 结合使用,以便更好地管理 Python 版本和项目依赖。以下是一个示例流程:

  1. 使用 pyenv 安装和切换 Python 版本

    pyenv install 3.9.7
    pyenv global 3.9.7
  2. 使用 pyenv-virtualenv 插件

    pyenv-virtualenv 是一个 pyenv 的插件,允许您使用 pyenv 创建和管理虚拟环境。

    首先,安装 pyenv-virtualenv

    brew install pyenv-virtualenv

    然后,将以下内容添加到您的 shell 配置文件(如 ~/.bashrc~/.zshrc~/.bash_profile)中:

    eval "$(pyenv init --path)"
    eval "$(pyenv init -)"
    eval "$(pyenv virtualenv-init -)"

    重新加载 shell 配置文件:

    source ~/.zshrc  # 或者 source ~/.bashrc, 取决于您使用的 shell
  3. 创建和激活虚拟环境

    pyenv virtualenv 3.9.7 myenv
    pyenv activate myenv
  4. 安装项目依赖

    pip install -r requirements.txt
  5. 退出虚拟环境

    pyenv deactivate

通过结合使用 pyenvvirtualenv,您可以更灵活地管理 Python 版本和项目依赖,确保每个项目都有独立的环境和依赖。

使用 pyenvvirtualenv 管理不同 Python 版本的项目环境

要同时管理两个需要不同 Python 版本的项目,可以结合使用 pyenvvirtualenv。以下是详细步骤:

安装 pyenvpyenv-virtualenv

  1. 安装 pyenv

    brew update
    brew install pyenv
  2. 安装 pyenv-virtualenv 插件

    brew install pyenv-virtualenv
  3. 配置 pyenvpyenv-virtualenv

    将以下内容添加到您的 shell 配置文件(如 ~/.bashrc~/.zshrc~/.bash_profile)中:

    export PATH="$HOME/.pyenv/bin:$PATH"
    eval "$(pyenv init --path)"
    eval "$(pyenv init -)"
    eval "$(pyenv virtualenv-init -)"

    重新加载 shell 配置文件:

    source ~/.zshrc  # 或者 source ~/.bashrc, 取决于您使用的 shell

为每个项目创建和管理虚拟环境

假设您有两个项目 project1project2,它们需要不同的 Python 版本。

project1 创建虚拟环境

  1. 安装所需的 Python 版本

    pyenv install 3.8.12
  2. 创建虚拟环境

    pyenv virtualenv 3.8.12 project1-env
  3. 激活虚拟环境

    pyenv activate project1-env
  4. 安装项目依赖

    在激活的虚拟环境中,安装 requirements.txt 中的依赖:

    pip install -r /path/to/project1/requirements.txt
  5. 退出虚拟环境

    pyenv deactivate

project2 创建虚拟环境

  1. 安装所需的 Python 版本

    pyenv install 3.9.7
  2. 创建虚拟环境

    pyenv virtualenv 3.9.7 project2-env
  3. 激活虚拟环境

    pyenv activate project2-env
  4. 安装项目依赖

    在激活的虚拟环境中,安装 requirements.txt 中的依赖:

    pip install -r /path/to/project2/requirements.txt
  5. 退出虚拟环境

    pyenv deactivate

切换和使用虚拟环境

  • 激活 project1 的虚拟环境

    pyenv activate project1-env
  • 激活 project2 的虚拟环境

    pyenv activate project2-env
  • 退出当前虚拟环境

    pyenv deactivate

通过以上步骤,您可以使用 pyenvvirtualenv 为不同的项目创建和管理独立的 Python 环境,确保每个项目都有独立的 Python 版本和依赖。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment