python虚拟环境的个人学习心得

引子

这是我进入这家公司的第三天,作为一个刚进入社会不到一年,之前在研究java,刚开始学习python的菜鸟,我准备开始记录自己的学习过程。那么这个地方非csdn莫属了,下面简单记录下现阶段我对虚拟环境的看法以及对命令做下笔记,如果有说错的还欢迎各位大佬指正。

python虚拟环境

首先,python虚拟环境是一个独立于系统本体之外的环境,个人它主要作用类似于java项目中的pom.xml。java中可以通过配置pom.xml来让maven加载相应的jar包,在python里面则是直接开辟出一个新空间,避免不同版本的包相互影响。

我在了解到这个东西后就有一个疑问,新开辟出的虚拟空间是在哪存储的呢,本机pip下载过的包还需要重新下载么。目前来看好像是的,他会在当前目录下面新创建一个文件夹,所以我之前猜测他会重复占用磁盘空间,现在看来应该是没错了。那么我个人认为,这种机制是不如java中maven来管理依赖来的方便的,也许是有什么底层原理我还不清楚吧。

在摸索的过程中,我遇到了一个坑,因为我学习的是python3,但是很多博客都是针对2版本的,所以前期我在学习的时候有时候会两种虚拟环境混着用,弄得我一头雾水深觉玩不转。下面总结下这两天对2版本和3版本虚拟环境的认知。

两者区别

所使用包

首先,在python2中,虚拟环境是通过下载virtualenv和virtualenvwrapper两个包来实现的,python3则是在上述两者之外标准库中自带了venv。

命令区别

首先,创建一个新目录并进入,例如在用户目录下创建:

mkdir ~/envs && cd ~/envs

python2下

virtualenv
	#创建虚拟环境:
	$ virtualenv envname
	#进入虚拟环境:
	$ source envname/bin/activate
	#退出虚拟环境:
	deactivate
	#删除虚拟环境:
	rmvirtualenv envname

其中要注意的是
在进入虚拟环境后,命令行前会出现一个(envname)格式的字符串。
删除虚拟环境需要在退出虚拟环境后。

virtualenvwrapper

virtualenvwrapper需要进行环境配置,配置好workon_home后,之后通过他新建的虚拟环境都会放在该目录下。

	#查看 virtualenvwrapper.sh 路径:
	$ which virtualenvwrapper.sh
	#配置环境变量: bash为~/.bashrc ,zsh为~/.zshrc ,也有配置~/.bash_profile文件的(本人采用方式)
	export WORKON_HOME=$HOME/.virtualenvs
	source virtualenvwrapper.sh的所在位置

	环境配置好后,就可以使用各种常用命令来操作虚拟空间了。

	#创建虚拟环境:
	$ mkvirtualenv envname
	#删除虚拟环境:
	rmvirtual envname
	#切换虚拟环境:
	workon envname
	#退出虚拟环境:
	deactivate
	#虚拟环境列表:
	lsvirtualenv -b

python3下

python3中上述两者的常用指令基本没有变化,不过在install包的时候需要把pip换成pip3。

进阶:可以使用 mkvirtualenv -p pythonx envname 来创建虚拟环境(pythonx,x指版本号),这样创建可以通过workon+空格+tab(双击)来查看全部虚拟环境。

venv

python3.3版本推出,3.5版本成为虚拟环境推荐工具,为python3环境下虚拟环境首选。

	#创建虚拟环境:
	$ python3 -m venv envname
	#进入虚拟空间:
	$ source envname/bin/activate
	#退出虚拟空间
	$ deactivate
	#删除虚拟环境:
	$ rm -rf envname

又一个有疑点的地方就是,根据python3.6的说明文档,$ python3 -m venv envname这种脚本语法应该已经被弃用了。
在这里插入图片描述
但是我自己尝试的时候该语句还是可以使用的。

此外,在创建一个新的虚拟环境时,使用venv还可以指定要创建的python版本,采用如下语法:

	python3.x -m venv envname

x代表小版本版本号,要确保该版本在你本机已经存在。

在磁盘中位置

virtualenv和venv都是在什么位置创建,文件就在什么位置;virtualenvwrapper则是会在WORKON_PATH指定的目录下创建文件。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值