引入——
解决两个在python开发中很常见的问题:
- Python很万能,这谁都知道(我也知道哈),但这就意味着——Python的库多,是真的多!你要用哪个库,就直接下载!pip install!很简单吧,是很简单!但是,这样会很直接的带来一个问题,也是很多新手容易犯得——你一看他的Python环境,全是第三方包,密密麻麻的,甚至于开个pycharm,加载第三方包都得加载半年,他还不知道为啥(傻傻以为是电脑不行~)
- (其实第二个问题往本质了讲跟第一个问题八九不离十)但是还是讲下为好~如果因为老板的需求——你要同时开发多个项目,咱就假设是俩吧。A项目的requirement.txt里面有个包是要用到Django V2.1.4;B项目的requirement.txt里面有个包是要用到Django V3.2.7。咋办?是不是傻眼了!你也知道,咱就一个电脑就一个python环境,咋能同时装两个不同版本的同一个包呢?
这就要让本文所要介绍的虚拟环境(virtualenv)隆重登场了!!! |
Python虚拟环境的主要目的是为了给不同的工程创建互相独立的运行环境。在虚拟环境下,每一个工程都有自己的依赖包,而与其它的工程无关。不同的虚拟环境中同一个包可以有不同的版本。并且,虚拟环境的数量没有限制,我们可以轻松地用virtualenv等工具来创建多个虚拟环境。
上面是很官方的解释,有可能有小伙伴们看完不是很明白。其实简单俩说,就是创建一个一个独立的小空间,在各自小空间里可以配置不一样的个性化的条件而不影响任何其他小空间。每一次boss下发的新项目都需要不用的环境和不同版本的工具包,如果将整个环境的版本更换,可能会导致以前的项目和代码完全不能运行,为了避免这种情况发生,独立的虚拟环境应运而生。
使用虚拟环境,我们可以随意对其进行设置或更改操作,随便你咋玩,不怕玩坏,大不了玩坏就删了重建呗!因为虚拟机是系统上运行的一个虚拟软件,对虚拟机系统的任何操作都相当于在操作虚拟机的虚拟机设备和系统,不会影响计算机上的真实数据!
安装python解释器(我感觉这句跟废话样,没python解释器咋用它的创建虚拟环境的包…)
使用virtualenv (注意:创建的虚拟环境是依赖于电脑的初始python环境但是又独立于它)
创建隔离的python运行环境:
windows下: ①安装:pip install virtualenv ②创建独立的python运行环境: virtualenv --no-site-packages env(参数--no-site-packages的意思是:创建的这个python虚拟环境不包括之前的python环境里安装的各种第三方库,可以不写,默认也是如此) 创建的新的python环境默认是放到当前目录下的env目录中! ③进入虚拟环境: env/Scripts/activate ④退出当前虚拟环境: deactivate
Linux下: ①安装:pip install virtualenv ②创建独立的python运行环境: virtualenv --no-site-packages env 创建的新的python环境默认是放到当前目录下的env目录中! 退出:deactivate ③进入虚拟环境: source/home/pyvip/env/bin/active ④退出: deactivate
python -m pip install virtualenv
如果要在pycharm里使用我们新建的虚拟环境,直接在settings里添加本地环境,在我们新建的放虚拟环境的文件夹里选中python的exe文件即可!
1.输入命令:virtualenv bbb即可新建一个虚拟环境。
2.输入命令:source /home/pyvip/bbb/bin/activate即可使用我们新建的虚拟环境。
如果要在pycharm远程连接linux使用新建的这个python虚拟环境。直接添加一个远程的环境即可:
其实,我们在ubuntu中设置虚拟环境时,通常会一并使用virtualenvwrapper包用于管理虚拟环境。详细操作步骤见本文:《阿里云服务器ECS中Ubuntu20.04中成功安装使用virtualenv和virtualenvwrapper》
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/119076.html
摘要:的包使用软件包管理系统进行管理。超过万人使用发行版本,并且拥有超过个适用于和的数据科学软件包。提供了大部分功能,并且大多数情况下两个可以同时使用。 Anaconda Anaconda简介 Anaconda是一个免费开源的Python和R语言的发行版本,用于计算科学(数据科学、机器学习、大数据处理和预测分析),Anaconda致力于简化包管理和部署。Anaconda的包使用软件包管理系统...
阅读 3348·2023-04-25 19:39
阅读 3772·2021-11-18 13:12
阅读 3608·2021-09-22 15:45
阅读 2400·2021-09-22 15:32
阅读 656·2021-09-04 16:40
阅读 3674·2019-08-30 14:11
阅读 1812·2019-08-30 13:46
阅读 1530·2019-08-29 15:43