手把手教你进行Python虚拟环境配置教程

所属分类: 脚本专栏 / python 阅读数: 207
收藏 0 赞 0 分享

/1 前言/

咱们今天就来说一下Python的虚拟环境,可能有的小伙伴会疑惑,Python的虚拟环境有什么用呢?接下来我们一起来探讨一下。

/2 虚拟环境的作用/

咱们今天就来说一下Python的虚拟环境,可能有的小伙伴会疑惑,Python的虚拟环境有什么用呢?接下来我们一起来探讨一下。

我们先来举个例子,来说明为什么需要虚拟环境。我们在学习Python的时候,可能会学到越来越多的第三方库,比如爬虫,我们需要安装requests,可能学着学着,我们还需要安装bs4,或者又学着学着,我们还需要安装scrapy,再学着学着,又需要安装lxml...

嗯...,没错,我们安装了很多的第三方库,但是我们仍然每天嗨皮敲着代码,丝毫没有发现任何问题。如果你用的是Pycharm,直到有一天,你会发现你的Pycharm会启动越来越慢,就比如下图这样。

嗯...我的算是比较快了,因为我有优化过了。

这只是其中一个问题,还有一个问题就是,比如你帮别人做了个东西,肯定所有的功能都不是自己写的,有一些东西是别人写的,你需要安装一些第三方包。之后你咔咔咔把代码写完了,你怀着兴奋的心情把东西发给他,然后他发现自己竟然用不了,而且那边还会报下图所示的错误...

然后你还要一步一步一步教他安装,嗯,多么的痛苦!关键是,能一步安装到位还好,但是很可能的是,你用的某个包版本是2.0,现在最新版本是2.2,他那边直接pip install package,安装的是最新版本的包,可能和你的效果不太一样。哦嚯,完了,又是莫名其妙的调试。嗯...骚年,加班吧...

上面说的,只是其中的一些问题,但是大概我们能猜测出来,如果我们不对我们的第三方库加以管理,可能会造成莫名其妙的问题,导致效率低下,bug多,如果是一个团队的话,我想会更糟糕,后果不堪设想。

那说到这里,我们有没有什么办法,能够管理一下这些东西呢?

答案是肯定的,我们能想到这个问题,我们的大佬前辈当然也想到了,他都替我们安排好了,我们来一一讲解。

/3 virtualenv登场/

咱们今天就来说一下Python的虚拟环境,可能有的小伙伴会疑惑,Python的虚拟环境有什么用呢?接下来我们一起来探讨一下。

virtualenv这个是目前最通用的虚拟环境,安装(直接安装最新版)指令是:pip3 install virtualenv,其安装中间过程,这里就不展开了,等着装完就行。这里重点讲一下virtualenv的具体操作步骤。

1、新建虚拟环境列表文件夹,专门用于存放虚拟环境。

2、之后输入cmd命令,切换到该虚拟环境文件夹下,如下图所示。

3、之后执行命令 virtualenv spider  --no-site-packages,其中参数--no-site-packages表示我们就创建一个干净的、没有第三方包的干净的环境,如下图所示。

这样我们就创建了一个虚拟环境,但是此时我们并没有使用,我们在执行pip install package时,依然还是安装那个真实的环境上。

4、接下来我们需要进入并且激活spider虚拟环境。

cd spider

cd Scripts

activate

当前面有显示(spider)时,表示我们已经进入了虚拟环境。这时候我们再执行pip install package时,就可以讲库安装在该新建的虚拟环境里了,如下图所示。

5、下图这个是我的虚拟环境。

6、下图这个是我的真实环境。

7、在虚拟环境中安装第三方包,以安装requests库为例,如下图所示。在虚拟环境中输入安装指令:pip install requests,可以看到库的具体下载进度条。

8、Ok,我们创建完了虚拟环境,但是应该怎么退出呢?

直接在虚拟环境中执行deactivate命令,就可以退出虚拟环境了,有的可能需要.bat,有的不需要,如下图所示。

退出之后,我们可以看到左边的(spider)已经没有了,进入到了我们的真实环境。如果我们需要再创建虚拟环境,如法炮制就好了。

/4 简单总结/

这篇文章主要介绍了一下Python的虚拟环境,阐述了虚拟环境的重要以及虚拟环境创建、使用和退出的具体操作步骤,希望对大家入门Python虚拟环境有帮助,后面我会写一篇关于Pycharm下如何使用虚拟环境的教程,教大家在Pycharm中导入虚拟环境,让你的环境不再乱糟糟。

本文由dcpeng 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。

转载、引用前需联系作者,并署名作者且注明文章出处。

以上所述是小编给大家介绍的手把手教你进行Python虚拟环境配置教程,希望对大家有所帮助!

更多精彩内容其他人还在看

Python实现按学生年龄排序的实际问题详解

这篇文章主要给大家介绍了关于Python实现按学生年龄排序实际问题的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
收藏 0 赞 0 分享

Python开发的HTTP库requests详解

Requests是用Python语言编写,基于urllib,采用Apache2 Licensed开源协议的HTTP库。它比urllib更加方便,可以节约我们大量的工作,完全满足HTTP测试需求。Requests的哲学是以PEP 20 的习语为中心开发的,所以它比urllib更加P
收藏 0 赞 0 分享

Python网络爬虫与信息提取(实例讲解)

下面小编就为大家带来一篇Python网络爬虫与信息提取(实例讲解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

在python3环境下的Django中使用MySQL数据库的实例

下面小编就为大家带来一篇在python3环境下的Django中使用MySQL数据库的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Python 3.x读写csv文件中数字的方法示例

在我们日常开发中经常需要对csv文件进行读写,下面这篇文章主要给大家介绍了关于Python 3.x读写csv文件中数字的相关资料,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
收藏 0 赞 0 分享

Python实现解析Bit Torrent种子文件内容的方法

这篇文章主要介绍了Python实现解析Bit Torrent种子文件内容的方法,结合实例形式分析了Python针对Torrent文件的读取与解析相关操作技巧与注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

Python实现文件内容批量追加的方法示例

这篇文章主要介绍了Python实现文件内容批量追加的方法,结合实例形式分析了Python文件的读写相关操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

Python简单实现自动删除目录下空文件夹的方法

这篇文章主要介绍了Python简单实现自动删除目录下空文件夹的方法,涉及Python针对文件与目录的读取、判断、删除等相关操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

简单学习Python多进程Multiprocessing

这篇文章主要和大家一起简单的学习Python多进程Multiprocessing ,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Python导入模块时遇到的错误分析

这篇文章主要给大家详细解释了在Python处理导入模块的时候出现错误以及具体的情况分析,非常的详尽,有需要的小伙伴可以参考下
收藏 0 赞 0 分享
查看更多