python骚操作 自动进入/退出 虚拟环境
一般地,在一台新的机器上装完python。在开发之前,我们还有一项重要的工作,就是创建一个py的虚拟环境。
复制代码
创建虚拟环境
在python2.7的时候,我常用的快速进入虚拟环境的方式,就是安装virtualenv和virtualenvwarpper。使用起来很方便,但是安装,还是有些麻烦。
python3,我们便可以用以下的方式来创建虚拟环境。
mkdir ~/venv && cd ~/venv
python3 -m venv xxx #创建一个xxx的虚拟环境
cd xxx
cd xxx/bin
复制代码
在这个目录下,有两个需要用到的执行脚本
activate:进入虚拟环境
source /path/to/activate
复制代码
执行这个脚本后,会生成一个命令 deactivate, 可以vi activate查看
deactivate: 退出虚拟环境
以上, 每次我们需要进入虚拟环境,我们都需要手动执行,以上命令。对于懒人十分不友好。
进入正题。
复制代码
安装懒人工具 autoenv
详细见:github
我们使用的是centos,一下提供两种安装方式。
pip install autoenv
echo "source `which activate.sh`" >> ~/.bashrc
或者直接下载git包
git clone git://github.com/kennethreitz/autoenv.git ~/.autoenv
echo 'source ~/.autoenv/activate.sh' >> ~/.bashrc
复制代码
使用autoenv
-
vi ./activate.sh 4 AUTOENV_ENABLE_LEAVE="aaaa" #将这个变量设为不为空的字符串
2.去工作目录下
执行以下命令
# py3创建的虚拟环境目录
echo 'source /path/to/xxx/bin/activate' > .env #进入目录执行
# 退出目录执行命令
echo 'deactivate' > .env.leave #退出目录执行
复制代码
- 重新进入目录
会看见以下输出:
autoenv:
autoenv: WARNING:
autoenv: This is the first time you are about to source /root/project/shell_learn/.env:
autoenv:
autoenv: --- (begin contents) ---------------------------------------
autoenv: source /root/venv/learn/bin/activate$
autoenv:
autoenv: --- (end contents) -----------------------------------------
autoenv:
autoenv: Are you sure you want to allow this? (y/N) y # 选Y
复制代码
以上,懒人工具已经配置完成。
配置pycharm或者其他远程工具,选择py解析器的时候,记得选择的是虚拟环境下的python