Python之虚拟环境venv实战详解
Posted 代码大师麦克劳瑞
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python之虚拟环境venv实战详解相关的知识,希望对你有一定的参考价值。
目录
简介
Python 应用程序通常会使用不属于标准库的包和模块。应用程序有时需要特定版本的库,因为应用程序可能需要修复特定的错误,或者应用程序可能使用库接口的过时版本编写。
这意味着一个 Python 安装可能无法满足每个应用程序的要求。如果应用程序 A 需要特定模块的 1.0 版,而应用程序 B 需要 2.0 版,则要求发生冲突,安装 1.0 或 2.0 版将导致一个应用程序无法运行。
这个问题的解决方案是创建一个虚拟环境,一个自包含的目录树,其中包含特定版本的 Python 的 Python 安装,以及一些额外的包。
然后不同的应用程序可以使用不同的虚拟环境。为了解决前面的冲突需求示例,应用程序 A 可以拥有自己的安装了 1.0 版的虚拟环境,而应用程序 B 可以拥有另一个安装了 2.0 版的虚拟环境。如果应用程序 B 需要将库升级到版本 3.0,这不会影响应用程序 A 的环境。
同样,工程之间有时也需要环境隔离,不同的工程安装不同的依赖,有利于后续一系列生产操作,不易产生bug以外的环境冲突、问题。
因此,我们需要虚拟环境用来隔离以减少解决环境问题带来的额外开支。
虚拟环境实战
创建虚拟环境
官方给出的建议是最好在一开始就创建虚拟环境。在不同环境下,我们使用不同命令,即可创建出一个名为venv的虚拟环境。我们列出不同的命令,因为笔者电脑是mac,所以后续执行结果均以mac为标准,其他系统自行测试。
# windows
python -m venv venv
#linux/macos
python3 -m venv venv
创建成功,这时已经创建了一个名为venv的文件夹我们进入文件夹内部查看一下结构,
激活虚拟环境
激活一下我们刚才创建的虚拟环境venv,在当前环境下shell中会显示已经激活的虚拟环境。
# windows
venv\\Scripts\\activate
# linux/macox
source venv/bin/activate
虚拟环境测试
虚拟环境中安装依赖包我们可以使用如下命令。
#windows/linux/macos
python -m pip install <package-name>
# 当你需要安装特定版本的依赖时 需要将 <package-name> 改写程<package-name>==指定版本号,例如
python -m pip install requests==2.6.0
安装一个requests库2.6.0版本,大家忽略一下网络问题。
可以通过python -m pip list
来查看已安装的依赖,我们看到requests库已经安装完毕。
停止虚拟环境
停止虚拟环境,很简单。只需要输入如下命令:
#windows/linux/macos
deactivate
小结
虚拟环境使用很简单,但是好处很多。具体使用细节大家可以自行挖掘,还有很多有趣且实用的命令。但是总得来说虚拟环境可以给我们带来很多好处。
1.避免系统污染
2.隔离依赖环境
3.回避依赖冲突
点赞收藏,富婆包养✋✋
以上是关于Python之虚拟环境venv实战详解的主要内容,如果未能解决你的问题,请参考以下文章