Python 虚拟环境

主要介绍virtualenv这一个创建Python虚拟环境的工具。

安装

1
pip3 install virtualenv

或者可以使用apt

1
apt install python3-virtualenv

基本使用

创建一个虚拟环境:

1
virtualenv 环境保存路径名

创建环境并重用系统已经安装的包

1
virtualenv --system-site-packages 环境保存路径名

激活环境

1
source 环境保存路径名/bin/activate

现在就可以在这个虚拟环境中直接使用pip等安装Python包,当前虚拟环境名也会显示在命令行前。

停用虚拟环境

1
deactivate

移动环境

假设我的环境原来保存在/tmp/env目录,但现在我想将其移动到/home/clh/code/env目录。

我们则需要修改bin/下的文件,对文件中的目录进行替换,这一步可以通过如下Shell脚本实现:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#! /bin/bash

dest_path=$1

cd $dest_path
source_path=$(cat bin/activate | grep VIRTUAL_ENV=\' | awk -F \' '{print $2}')
dest_path=`pwd`

echo "From $source_path to $dest_path"

# 对 / 转义
source_path=${source_path//\//\\\/}
dest_path=${dest_path//\//\\\/}

grep -sr "$source_path" | awk -F : '{print $1}' | xargs -I {} sed -i "s/$source_path/$dest_path/g" {}

使用方法:
先将/tmp/env移动到/home/clh/code/env,再运行:

1
./脚本名 /home/clh/code/env

更多用法参考

https://pythonguidecn.readthedocs.io/zh/latest/dev/virtualenvs.html