Python3 venv搭建轻量级虚拟环境的步骤(图文)

yipeiwu_com6年前Python基础

今天先聊一聊在windows/mac iOS系统下用venv搭建python轻量级虚拟环境的问题。

使用venv搭建的虚拟环境同virtualenv搭建的虚拟环境,即venv可替代virtualenv

1. 虚拟环境的作用是:搭建独立的python运行环境,不与其他产生冲突

就是说,安装在虚拟环境里的所有包,均不会对环境外的其他包产生影响,反之,在虚拟环境下运行时只能调用虚拟环境中安装的包,不会调用外部的包。比如,mac系统自带python2,我搭建了虚拟环境安装python3,那么我在虚拟环境内安装的pip install pandas 后,我在环境外运行python时,import pandas是会报错的

2. 虚拟环境有助于包的管理和防止版本冲突

便于包管理:有时我们要做数据分析,我们需要相关的包,比如pandas,有时我们需要做分词,需要jieba,有时要画图,需要matploylib,只需要其中一个包,其余用不到,那么我们建立虚拟环境后,只要下载相应的包即可

避免版本冲突:在某些时候,我们在开发时,有时需要调用2.7的包,有时需要调用3.6的包,那么就可以通过独立的环境运行,从而完成这项工作,避免了冲突

3. 删除卸载方便

venv建立的虚拟环境是轻量级的,就是说,如果要卸载,或不用了,那么直接删除对应的虚拟环境文件夹即可,同时也删除了对应安装的包,这个补充了”便于包管理"的内容,可以用完即删,很便捷

下面介绍一下虚拟环境的创建方法:

先在window系统安装python3,因为venv是python3独有的工具,Mac/Linux系统也一样,Mac上自带python2,python3的安装可参考文章:

/post/167318.htm

1. Windows系统下创建虚拟环境                        

选择建立虚拟环境的文件夹,比如桌面,打开windows的dos界面,去到建立虚拟环境的文件夹,cd '文件夹名',这里是cd desktop

两种方法建立虚拟环境文件夹,比如我的虚拟环境文件夹是python_ven_demo:

1. 在文件夹下直接建立:

先新建文件夹python_ven_demo,

然后进入该文件夹cd python_ven_demo,

然后搭建虚拟环境:python -m venv . (注:venv 之后一个空格加上一点“.”)


2. 在桌面上直接建立虚拟环境文件夹 及 虚拟环境:

直接输入 python -m venv python_ven_demo (虚拟环境文件夹名,直接在桌面建立了文件夹,同时生成了虚拟环境)

3. 生成的虚拟环境内容:


4. 激活虚拟环境[注意:只有激活之后,才算进入该虚拟环境,否则安装包时,依然是安装在全局环境之下]

激活文件在Script文件夹下,如图所示。激活:activate.bat,退出:deactivate.bat

激活方式为:dos 界面进入python_ven_demo/文件夹,然后输入activate.bat (也可直接输入activate)即可激活环境,输入python 就进入python3.6环境了,注,Max/Linux系统可进入python2.7环境,详见后续介绍

退出方式:输入deactivate.bat 或 deactivate



5. 进行包安装:以jieba(分词包)为例

首先需要先激活,在激活后,才可以进行安装,否则安装到的是全局环境下

激活后,pip3 install jieba


下载好后,可在虚拟环境下看到该包安装在了该虚拟环境下,如果删除了该虚拟环境文件夹,则包页一起被删除了,不会对全局有影响

2. Linux/Mac系统下创建虚拟环境                        

和windos类似,差别不大,所以只简单叙述过程:

1. 建立虚拟环境方法相同,进入目标文件夹cd desktop

使用python -m venv python_ven_demo

或新建文件夹python_ven_demo,进入 cd python_ven_demo,然后python -m venv .


可以看到,文件构成与windos略有不同


2. 激活

激活方法和windos不同,activate文件在bin文件夹下,并且,激活时不可直接输入activate[这样是无效的],而是需要使用source activate 命令:


3. 包安装

同windows,激活后,输入python2,可进入python2.7环境,输入python3,可进入python3.6环境

pip install 可安装2.7对应的包,pip3可安装3.6对应的包

好了,就介绍到这里,如果其中有什么错误,欢迎各位提出意见

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python入门教程之if语句的用法

Python入门教程之if语句的用法

 Python中的if语句是类似的其它语言的。 if语句包含使用该数据进行比较,并根据比较的结果做出了决定的逻辑表达式。 语法: if语句在Python编程语言的语法是:...

Djang中静态文件配置方法

Djang中静态文件配置方法

下面通过图文并茂的方法给大家详细介绍下Djang中静态文件配置方法 一、django静态文件配置原理 静态文件配置就是为了让用户请求时django服务器能找到静态文件返回。 首先要理解几...

Tensorflow的可视化工具Tensorboard的初步使用详解

Tensorflow的可视化工具Tensorboard的初步使用详解

当使用Tensorflow训练大量深层的神经网络时,我们希望去跟踪神经网络的整个训练过程中的信息,比如迭代的过程中每一层参数是如何变化与分布的,比如每次循环参数更新后模型在测试集与训练集...

Python hexstring-list-str之间的转换方法

在Python操作数据内容时,多数情况下可能遇到下面3种类型的数据处理: hexstring 如:'1C532145697A8B6F' str 如:'\x1C\x53\x21\x45\x...

python 移除字符串尾部的数字方法

今天在下脚本的时候遇到一个问题,比如有这样的一个字符串 t = "book123456",想把尾部的数字全部去掉,只留下“book”,自己用正则试了下,是实现了,但速度不是很快,于是问了...