其实按照官方文档就已经可以安装并使用pyenv和virtualenv了,但在实际操作过程中,你可能还是会遇到各种各样的问题,希望这篇文章能帮到你。
值得注意的是,这篇文章所记录的操作都是在Debian 10操作系统下完成的。如果你的操作系统不同,可能无法照搬这篇文字的操作。不过无需担心,安装过程在各个操作系统下是大致相同的,聪明的你一定能灵活处理。(如果实在处理不了,可以留言。)
下面,我们开始吧!
安装
首先,确保该有的东西都有,没有的都装上。
sudo apt-get update
sudo apt-get install --no-install-recommends make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
sudo apt-get install git
然后,安装pyenv到$HOME
下的.pyenv
目录。
从仓库获取pyenv,放置到.pyenv
目录。
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
配置.bashrc
文件。
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bashrc
重启Shell以应用新的.bashrc
文件。
exec "$SHELL"
现在,你已经可以使用pyenv啦!
接着,我们安装virtualenv。
从仓库获取virtualenv,以插件形式安装到.pyenv
目录。
git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
配置.bashrc
,为自动激活virtualenv作准备。
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
重启shell以应用新的.bashrc
文件。
exec "$SHELL"
至此,virtualenv已经安装完毕!
下面,我们通过一个Hello World程序来试用一下pyenv和virtualenv,了解使用pyenv和virtualenv的方法。
使用
首先,通过pyenv安装一个Python。
查看可以安装的Python版本。
pyenv install --list
我选择3.8.1版本进行安装。
pyenv install 3.8.1
接着,创建一个virtualenv。
创建一个使用3.8.1版本Python的virtualenv,名为env_raaynk_hello_world
。
pyenv virtualenv 3.8.1 env_raaynk_hello_world
这条命令会在$(pyenv root)/versions
目录下创建一个env_raaynk_hello_world
目录。
然后,实现名为env_raaynk_hello_world
的virtualenv的自动激活。
新建存放项目代码的目录,我把它放在$HOME
下的code_raaynk_hello_world
目录,并进入。
cd ~
mkdir code_raaynk_hello_world
cd code_raaynk_hello_world
创建.python-version
文件,在其中写上当前virtualenv的名字(可通过pyenv versions
命令查看所有可用virtualenv)。
pyenv versions
echo 'env_raaynk_hello_world' >> .python-version
现在,你的命令行开头应该会显示(env_raaynk_hello_world)
字样,表示当前virtualenv环境已激活。
创建一个Python代码文件,在其中写上打印Hello World!的代码。
echo 'print("Hello World!")' >> main.py
运行它。
python main.py
到这里,相信你对pyenv和virtualenv的使用方法已经比较清楚了。
下面,我会对pyenv和virtualenv的一些常用命令进行整理。
常用命令
查看可安装的Python版本
pyenv install --list
安装指定Python版本
pyenv install <版本>
卸载指定Python版本
pyenv uninstall <版本>
查看当前已安装的Python版本
pyenv versions
查看当前已激活的Python版本
pyenv version
创建指定版本的virtualenv
pyenv virtualenv <版本> <名称>
创建当前版本的virtualenv
pyenv virtualenv <名称>
查看所有存在的virtualenv
pyenv virtualenvs
手动激活指定virtualenv
pyenv activate <名称>
手动反激活当前已被激活的virtualenv
pyenv deactivate
删除指定virtualenv(三种方法)
法一:删除文件
直接删除$(pyenv root)/versions
和$(pyenv root)/versions/{version}/envs
中的指定目录
法二:使用uninstall
命令
pyenv uninstall <名称>
法三:使用virtualenv-delete
命令
pyenv virtualenv-delete <名称>
参考
https://github.com/pyenv/pyenv/wiki
https://github.com/pyenv/pyenv/blob/master/README.md
https://github.com/pyenv/pyenv/blob/master/COMMANDS.md
https://github.com/pyenv/pyenv-virtualenv/blob/master/README.md
作者:Raaynk
链接:https://www.raaynk.com/archives/016-install-pyenv-virtualenv.html