如果是virtualenv相关用法请参考:python使用virtualenv在本地新建虚拟环境

因为目前集自动下载、安装、配置环境于一体的工具还没有,所以前面的步骤我们都要自己完成,整体逻辑是:

  1. 下载指定版本的python
  2. 本地编译好即可
  3. 用虚拟环境指定编译后的python程序,借此创建新的虚拟环境

1. 下载对应的python安装包

官网网站:https://www.python.org/downloads/,官网不适合找历史版本

python不同版本的FTP服务:https://www.python.org/ftp/python/,这个适合找历史版本

找到想要的版本,比如我想下载3.7.13,使用:

mkdir make_python # 用来装编译完成后的python运行程序
wget https://www.python.org/ftp/python/3.7.13/Python-3.7.13.tar.xz
tar -xvJf Python-3.7.13.tar.xz
cd Python-3.7.13.tar.xz/

2. 开始编译Python

这一部分主要是需要编译python并得到可执行的python程序

首先安装通用编译工具:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install -y gcc make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev

然后开始编译:

首先设置一下编译要存放的目录,这里不要放到系统环境下,方便后续创建虚拟环境的管理

./configure --prefix=/home/my_user/make_python/python3_7
make && make install
cd ../make_python/python3_7

测试一下python能否运行:

cd bin/
./python3

如果能够运行成功,显示python3.7.13,就OK了,记录一下当前的目录:

pwd

比如是:/home/my_user/make_python/python3_7/bin

3. pipenv配置虚拟环境

首先退出这个目录:

cd ../../..
mkdir python_env # 用来存放虚拟环境版本
cd python_env/
mkdir my_python3_7 # 这个是环境的名称

然后借助编译后的程序创建python虚拟环境:

pipenv --python="/home/my_user/make_python/python3_7/bin/python3.7"

其中:

  • --python后的参数是:编译后的python的运行程序

这样python3.7的虚拟环境就安装完成了。其中,pipenv创建的虚拟环境路径是:/home/my_user/.local/share/virtualenvs

4. 进入虚拟环境

pipenv shell

这时运行python就可以看到python3.7.13

在这里插入图片描述
博主在实验的时候虚拟环境里的pip用不了,很神奇,报错ModuleNotFoundError: No module named 'pip._vendor.six',这里我们重装一下pip就可以:

wget https://bootstrap.pypa.io/get-pip.py

然后使用python运行

python get-pip.py --force-reinstall
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐