linux中快速且稳定的python环境配置
pyenv+poetry快速实现稳定的测试环境
偶尔想使用python跑一跑一些测试的程序,环境的适配就是个迷,每次都耗费大量时间在这上面
快速安装不同的新python -
pyenv
不同项目下的python虚拟环境管理 -
poetry
1.使用 pyenv 管理多版本 Python
pyenv 是一个用于管理多个 Python 版本的工具,它允许你轻松地安装和切换不同版本的 Python,并为每个项目设置特定的 Python 版本。下面是 pyenv 的基本使用教程:
安装 pyenv
pyenv 的安装通常依赖于你的操作系统。下面是几个常见平台上的安装方法。
在 macOS 上安装
- 安装 Homebrew(如果尚未安装): - 1 - /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- 使用 Homebrew 安装 - pyenv:- 1 - brew install pyenv
- 配置 Shell,确保 - pyenv可以正确加载。在你的 shell 配置文件中(例如- ~/.bash_profile或- ~/.zshrc),加入以下内容:- 1 
 2
 3- export PATH="$HOME/.pyenv/bin:$PATH"
 eval "$(pyenv init --path)"
 eval "$(pyenv init -)"
- 重新加载配置: - 1 
 2- source ~/.bash_profile # 如果使用 bash
 source ~/.zshrc # 如果使用 zsh
在 Ubuntu 或其他 Linux 上安装
- 安装依赖: - 1 
 2
 3
 4
 5- sudo apt update
 sudo apt install -y make build-essential libssl-dev zlib1g-dev \
 libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \
 libncurses5-dev libncursesw5-dev libffi-dev liblzma-dev \
 python3-openssl git
- 安装 - pyenv:- 1 - curl https://pyenv.run | bash
- 配置 Shell,确保 - pyenv可以正确加载。在你的 shell 配置文件中(例如- ~/.bashrc或- ~/.zshrc),加入以下内容:- 1 
 2
 3- export PATH="$HOME/.pyenv/bin:$PATH"
 eval "$(pyenv init --path)"
 eval "$(pyenv init -)"
- 重新加载配置: - 1 
 2- source ~/.bashrc # 如果使用 bash
 source ~/.zshrc # 如果使用 zsh
在 Windows 上安装
对于 Windows,推荐使用 pyenv-win:
- 使用 PowerShell 安装: - 1 
 2- Invoke-WebRequest -Uri https://github.com/pyenv-win/pyenv-win/releases/latest/download/pyenv-win.zip -OutFile "$env:USERPROFILE\pyenv.zip"
 Expand-Archive -Path "$env:USERPROFILE\pyenv.zip" -DestinationPath "$env:USERPROFILE\.pyenv"
- 在 PowerShell 配置文件中添加以下内容(例如 - $PROFILE):- 1 
 2- $env:PYENV = "$env:USERPROFILE\.pyenv"
 $env:Path = "$env:PYENV\bin;$env:PYENV\shims;$env:Path"
安装 Python 版本
安装 pyenv 后,你可以安装不同版本的 Python。
- 查看可用的 Python 版本: - 1 - pyenv install --list
- 安装特定版本的 Python,例如安装 Python 3.10.6: - 1 - pyenv install 3.10.6
- 安装过程可能需要一些时间,取决于你的网络和计算机性能。 
设置全局 Python 版本
使用 pyenv,你可以设置全局的 Python 版本(即默认版本)。
- 设置全局版本: - 1 - pyenv global 3.10.6
- 验证当前的全局 Python 版本: - 1 - python --version
设置项目特定的 Python 版本
你可以为特定的项目设置不同的 Python 版本,而不是使用全局版本。
- 在项目目录中设置本地 Python 版本: - 1 
 2- cd /path/to/your/project
 pyenv local 3.9.1
- 你可以使用 - pyenv version来查看当前目录下的 Python 版本:- 1 - pyenv version
升级和卸载 Python 版本
- 升级 Python 版本: - 1 
 2- pyenv install 3.10.7 # 安装新版本
 pyenv global 3.10.7 # 设置为全局版本
- 卸载已安装的 Python 版本: - 1 - pyenv uninstall 3.9.1
使用 pyenv 的其他功能
- 查看已安装的 Python 版本: - 1 - pyenv versions
- 为当前会话临时设置 Python 版本: - 1 - pyenv shell 3.8.5
小贴士
- pyenv会为每个 Python 版本自动安装- pip,因此你可以直接使用- pip来管理依赖。
- 使用 pyenv的时候,记得定期更新 Python 版本和插件:1 pyenv update
2.使用poetry管理python项目的依赖
poetry 是一个用于 Python 项目的依赖管理和构建工具。它通过提供简洁的命令行界面来简化包管理和项目管理的过程,取代了传统的 pip 和 virtualenv 的使用。
安装 Poetry
要安装 Poetry,可以使用以下命令:
使用 pip 安装:
| 1 |  | 
或者使用官方推荐的安装脚本:
| 1 |  | 
安装完成后,确认 Poetry 是否成功安装:
| 1 |  | 
创建新项目
要使用 Poetry 创建一个新的 Python 项目,可以运行:
| 1 |  | 
这将创建一个包含基础目录结构的项目:
| 1 |  | 
初始化现有项目
如果你已有一个现有的 Python 项目,可以在项目根目录下运行:
| 1 |  | 
这将引导你逐步配置项目的 pyproject.toml 文件。
安装依赖
使用 Poetry 安装依赖非常简单。你可以运行以下命令来安装某个库:
| 1 |  | 
这将自动将 requests 添加到项目的依赖中,并更新 pyproject.toml 文件。
如果你需要安装开发依赖(如 pytest),可以使用:
| 1 |  | 
安装所有依赖
如果你需要安装 pyproject.toml 中列出的所有依赖,可以运行:
| 1 |  | 
使用虚拟环境
Poetry 自动为每个项目创建一个隔离的虚拟环境。你无需手动创建虚拟环境,所有依赖都将安装到该虚拟环境中。
要进入虚拟环境:
| 1 |  | 
运行脚本
在 Poetry 的虚拟环境中,你可以直接运行 Python 脚本。比如运行项目的入口脚本:
| 1 |  | 
发布包
当你准备好发布你的项目时,Poetry 可以帮助你打包并上传到 PyPI。
首先,确保项目已经按照标准结构组织,并且 pyproject.toml 文件中包含了必要的信息。
然后,使用以下命令构建包:
| 1 |  | 
最后,将包发布到 PyPI:
| 1 |  | 
其他常用命令
- 查看当前安装的依赖: - 1 - poetry show
- 更新项目依赖: - 1 - poetry update
- 检查依赖的安全性(需要配置 PyUp API): - 1 - poetry check
通过这些基本操作,你可以高效地管理和维护 Python 项目。如果你有更具体的需求或问题,可以提供更多细节!