【pyenv+venv组合来使用Python虚拟环境的方法】

部署运行你感兴趣的模型镜像

背景

公司为了省钱,压缩使用anaconda的名额,因此我需要掌握非conda的python虚拟环境工具。

2025-12-22更新:不用那么麻烦了,直接用 micromamba,官网直接下载安装,没有base环境,只有conda-forge源。再也不会牵扯到defaults等商业纠纷的源了。用法和conda差不多。国内应该也可以替换conda-forge源到清华镜像。


一、pyenv + venv

经过调研实验,我们可以使用pyenv + venv 相结合的方式来勉强实现conda的核心功能:

  1. 创建虚拟环境,指定版本的python
  2. 在该虚拟环境安装包。

接下来我们逐步演示操作,就以我mac为例,linux应该差不多,可以问大模型;至于windows,现在都是双系统,用linux来开发吧!

1.1 安装与配置pyenv

默认你已经安装了homebrew并把源改为国内的源,比如清华源、阿里源等。

1.1 安装pyenv

brew install pyenv

1.2 配置pyenv

安装完成后,需要将pyenv 添加到shell的环境变量中,以方便系统能找到Pyenv命令。可以放到.zshrc中,或者我一般会有自己的~/.mx_bashrc来定制一些个性化设置,也可以放到.mx_bashrc里边。

export PYENV_ROOT="$HOME/.pyenv"    # 注意,因为我会修改$HOME的值,所以这里的路径 要注意根据实际情况修改
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"

1.3 验证安装

执行以下命令来验证pyenv是否安装成功。

pyenv --version

如果输出pyenv的版本号,则表示安装成功。

2. 安装指定版本的Python并使用

2.1 使用pyenv 来安装指定版本的python。

# 以安装3.11版本的python为例,不需要写python=3.11
pyenv install 3.11

2.2 使用该版本

指定使用pyenv下载的某个版本的python

pyenv local 3.11

3. 创建并使用虚拟环境

3.1 创建虚拟环境

注意,使用venv的方式来创建虚拟环境,需要python 3.3版本以上。

虚拟环境要放到一个目录,所以你先在终端进入到预期存放环境的目录里,运行以下指令,会在当前目录下创建一个 your-env-name的文件夹。

python -m venv your-env-name

3.2 激活虚拟环境

在刚创建的虚拟环境夹里找到激活命令并激活。

source your-env-name/bin/activate

3.2 安装包

在安装前,最好切换一下包的源,改为清华源或者阿里源。

3.2.1 更换安装源
  • 如果是在安装包时临时使用一下:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy
  • 如果要永久修改当前及以后的虚拟环境的源为清华源
    用命令行的方式最常见:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip config set install.trusted-host pypi.tuna.tsinghua.edu.cn

也可以用手工修改配置文件的方式:

# 在~./pip/pip.conf里编辑,添加内容,如果没有该文件,那么就创建

mkdir -p ~/.pip
vim ~/.pip/pip.conf

在该文件里添加下述内容。

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

[install]
trusted-host = pypi.tuna.tsinghua.edu.cn
3.2.2 安装包

这是后就可以正常用pip 来安装包了

pip install numpy==3.8.1 

3.3 复制当前虚拟环境

有时候需要迁移代码,需要把虚拟环境也迁移过去。

# 导出配置
pip freeze > requirements.txt

# 载入配置
pip install -r requirements.txt

4. 退出激活环境

很简单,直接一个deactivate 命令即可。

deactivate

5. 删除虚拟环境

为了节省空间,可以删掉不需要的虚拟环境。很简单,直接删除虚拟环境所在的文件夹即可。

rm -rf your-env-name/

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

在你使用 `python3 -m venv pyenv` 创建了虚拟环境之后,接下来你需要**激活**它,然后才能在这个隔离的环境中安装包、运行脚本等。 --- ### ✅ 使用虚拟环境的完整步骤如下: --- ### 🔹1. **激活虚拟环境** 根据你的操作系统,使用不同的命令来激活虚拟环境: #### ✅ Linux/macOS: ```bash source pyenv/bin/activate ``` 激活后,命令行前面会显示 `(pyenv)`,表示你已经进入了虚拟环境。 #### ✅ Windows: ```cmd pyenv\Scripts\activate ``` 激活后,命令行会变成: ``` (pyenv) C:\your\path> ``` --- ### 🔹2. **在虚拟环境中安装依赖包** 激活虚拟环境后,可以使用 `pip` 安装包,这些包只会安装在该虚拟环境中,不会影响全局 Python 环境。 ```bash pip install requests numpy ``` 你可以使用以下命令查看当前环境中安装了哪些包: ```bash pip list ``` --- ### 🔹3. **运行 Python 脚本** 激活虚拟环境后,使用该环境运行你的 Python 脚本: ```bash python your_script.py ``` 确保你使用的是虚拟环境中的 `python`,可以使用以下命令确认: ```bash which python # Linux/macOS where python # Windows ``` 输出应指向虚拟环境目录下的 `bin/` 或 `Scripts/` 文件夹。 --- ### 🔹4. **退出虚拟环境** 当你完成工作后,可以使用以下命令退出虚拟环境: ```bash deactivate ``` 退出后,命令行前的 `(pyenv)` 会消失,恢复到全局 Python 环境。 --- ### 🔹5. **删除虚拟环境(可选)** 如果你不再需要这个虚拟环境,可以直接删除整个文件夹: ```bash rm -rf pyenv # Linux/macOS ``` ```cmd rmdir /s /q pyenv # Windows ``` --- ### ✅ 示例流程(以 Linux/macOS 为例) ```bash # 创建虚拟环境 python3 -m venv pyenv # 激活虚拟环境 source pyenv/bin/activate # 安装包 pip install flask # 查看已安装包 pip list # 运行脚本 python app.py # 退出虚拟环境 deactivate ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值