python 多版本环境管理

举报
pangzih 发表于 2023/07/21 20:11:16 2023/07/21
【摘要】 在开发和维护python程序的时候,时常需要面对许多不同版本环境下的应用开发和部署问题,如果不能做好不同版本之间的管理,会为开发和部署带来许多的困难,本文主要讲解virtualenv的用法,帮助在命令行模式下实现不同python版本的环境管理。

简述,python发行的版本多,而且版本之间不兼容,所以需要一个工具来管理多版本的python环境,这个工具就是virtualenv。virtualenv是一个第三方工具,用来创建隔离的python环境,多个python相互独立,互不影响。

virtualenv这个单词,前面的virtual是虚拟的意思,后面的env是environment的缩写,表示环境,virtualenv就表示虚拟环境。

python3自带了venv模块,功能与virtualenv类似,但是用法有一些区别,本文主要讲解virtualenv的用法。

安装

virtualenv使用pip安装,安装命令如下:

pip install virtualenv

创建虚拟环境

virtualenv的用法很简单,首先cd到你想要创建虚拟环境的目录,然后执行如下命令:

virtualenv venv

venv是虚拟环境的名字,可以根据自己的需要设置,执行完上面的命令后,会在当前目录下创建一个venv目录,目录结构如下:

venv
├── bin
│   ├── activate
│   ├── activate.csh
│   ├── activate.fish
│   ├── easy_install
│   ├── easy_install-3.6
│   ├── pip
│   ├── pip3
│   ├── pip3.6
│   ├── python -> python3
│   └── python3 -> /usr/local/bin/python3
├── include
├── lib
│   └── python3.6
│       └── site-packages
└── pyvenv.cfg

venv目录下有bin、include、lib、pyvenv.cfg四个目录,其中bin目录下有activate、activate.csh、activate.fish三个文件,这三个文件是激活虚拟环境的脚本,使用不同的shell,选择不同的脚本,比如使用bash,执行如下命令激活虚拟环境:

source venv/bin/activate

激活虚拟环境后,会发现命令行的最前面多了一个(venv)的前缀,表示当前环境是venv,执行python命令,会发现python的版本是3.6,而不是系统的python版本,这是因为虚拟环境中已经安装了python3.6,而且虚拟环境的优先级比系统的优先级高。

安装包

虚拟环境创建好后,可以使用pip安装包,安装的包都会被安装到venv目录下,而不是系统的site-packages目录下,这样就不会影响系统的python环境。

退出虚拟环境

退出虚拟环境很简单,执行如下命令即可:

deactivate

删除虚拟环境

删除虚拟环境很简单,直接把venv目录删除即可。

总结

virtualenv是一个非常好用的工具,可以很方便的管理多版本的python环境,推荐使用。

参考

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。