使用virtualenv创建Python环境及PyQT5环境配置的方法


Posted in Python onSeptember 10, 2019

一、写在前面

从学 Python 的第一天起,我就知道了使用 pip 命令来安装包,从学习爬虫到学习 Web 开发,安装的库越来越多,从 requests 到 lxml,从 Django 到 Flask,各种各样的库都处在一个 Python 环境之中。

这种做法对于我这种懒人来说是再适合不过的了,但是这样也是会有问题的。第一个问题在于 Pycharm 的加载速度变得慢了,因为要导入太多包了,而其中很多包对于很多程序来说根本用不上。第二个问题在于很多模块之间是有版本要求的,都需要特定的版本才能执行。可能有人会说去安装那个特定的版本不就好了?然而要是每次都需要这么做呢?岂不是得花费太多时间了嘛,所以是时候学习下使用 virtualenv 来为我们的应用创建一套“隔离的” Python 运行环境了!

二、使用virtualenv

1.下载

既然要使用 virtualenv,那第一步肯定得安装了,使用 pip 进行安装即可。

pip install virtualenv

2.创建环境

你需要找一个文件夹用来储存创建的环境(例如:my_env),然后使用 virtualenv 命令创建环境,该命令有一个 --no-site-packages 参数,使用了这个参数之后就不会将系统环境中已经有的包复制过来了,当然会有几个基础的包的比如pip。除此之外,如果你的系统中已经装了多个版本的 Python,还可以通过传入路径来指定 Python版本。最后,你需要传入一个名称给创建的 Python 环境命名,这里我使用的是 for_pyqt,很明显就是为 PyQT5 所创建的环境了。

最终命令为:

virtualenv --no-site-packages for_pyqt

下图是运行时的截图:

使用virtualenv创建Python环境及PyQT5环境配置的方法

3.安装第三方包

现在环境已经创建好了,可以看下都有什么文件:

使用virtualenv创建Python环境及PyQT5环境配置的方法

要安装第三方包,还需要从系统的 Python 环境切换到我们创建的 Python 环境之中。具体步骤为进入 Scripts 文件夹,执行 activate 命令,如下所示:

使用virtualenv创建Python环境及PyQT5环境配置的方法

可以看到开头已经变成了 for_pyqt,也就表明已经切换到创建的 Python 环境中了,然后就可以愉快地使用 pip 安装第三方包了!

4.使用创建的 Python 环境

这里只讲怎么使用 Pycharm 导入我们创建的 Python 环境。

在 Pycharm 中打开设置,然后添加 python 解释器,创建一个空的文件夹(例如:venv),再将创建的 Python 环境的路径加进来,最后点击“OK”就大功告成了。

使用virtualenv创建Python环境及PyQT5环境配置的方法

三、PyQT5环境配置

1.为什么是PyQT5?

如果要你用 Python 写 GUI,你会用什么呢?是用 Python 自带的 tkinter?还是 WxPython?又或者是 PyQT5?

在这里我首先要淘汰掉的就是 tkinter,原因有二,一是使用麻烦,接口难用,二是做出来的界面颜值是真的低!那 WxPython 和 PyQT5 对比呢?

首先这两者都是基于 C++ 开发的,且都跨平台,开发的界面也都还算美观,不过 PyQT5 更加灵活,各组件灵活搭配能实现很多功能,WxPython 在这方面表现就不太好了。因此最终我选择了 PyQT5,虽然它安装起来真的很麻烦!

2.PyQT5安装

要使用 PyQT5,除了需要安装 PyQT5 这个包之外,还需要安装一个用来支持 PyQT5 的包:pyqt5-tools。所以安装命令为:

pip install PyQT5
pip install pyqt5-tools

这两个包安装的时候可能会花费很长时间,所以就需要你有一点耐心了==

3.PyQT5配置

这里还是以 Pycharm 为例来说下 PyQT5 的环境配置。选择"File" => "Settings" => "Tools" => "External Tools",然后点击“+”,进行如下配置:

使用virtualenv创建Python环境及PyQT5环境配置的方法

使用virtualenv创建Python环境及PyQT5环境配置的方法

主要就是把 designer.exe 和 pyuic5.exe 的路径加进去,这里给出我的路径以供参考:

E:\Pycharm\my_env\for_pyqt\Lib\site-packages\pyqt5_tools\Qt\bin\designer.exe

E:\Pycharm\my_env\for_pyqt\Scripts\pyuic5.exe

完成上述操作之后,应该就能看到添加的工具了,如下图:

使用virtualenv创建Python环境及PyQT5环境配置的方法

4.环境验证

首先点击 QtDesigner 创建一个应用,然后保存下来,再在 Pycharm 中右键点击该文件后选择 “PyUIC”,如果出现如下情况,那么恭喜你,你的环境就装好了!

使用virtualenv创建Python环境及PyQT5环境配置的方法

至于为什么会出现上面的报错信息,我觉得是因为没有指明文件路径。解决办法就是在命令行中使用如下命令(以test.ui为例):

pyuic5 -o ui.py test.ui

该命令不报错的话就会生成一个 ui.py 了,然后你就可以愉快地使用 PyQT5 开发属于你的应用了!

总结

以上所述是小编给大家介绍的使用virtualenv创建Python环境及PyQT5环境配置的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
浅析Python中的多重继承
Apr 28 Python
基python实现多线程网页爬虫
Sep 06 Python
Python异常的检测和处理方法
Oct 26 Python
解决Python3.5+OpenCV3.2读取图像的问题
Dec 05 Python
python画图--输出指定像素点的颜色值方法
Jul 03 Python
解决pycharm下os.system执行命令返回有中文乱码的问题
Jul 07 Python
详解Django定时任务模块设计与实践
Jul 24 Python
Python 使用threading+Queue实现线程池示例
Dec 21 Python
使用PyTorch训练一个图像分类器实例
Jan 08 Python
opencv python在视屏上截图功能的实现
Mar 05 Python
Python 绘制可视化折线图
Jul 22 Python
Python应用自动化部署工具Fabric原理及使用解析
Nov 30 Python
Python将视频或者动态图gif逐帧保存为图片的方法
Sep 10 #Python
python使用PIL和matplotlib获取图片像素点并合并解析
Sep 10 #Python
Python字符串中添加、插入特定字符的方法
Sep 10 #Python
详解python uiautomator2 watcher的使用方法
Sep 09 #Python
一行Python代码制作动态二维码的实现
Sep 09 #Python
python制作英语翻译小工具代码实例
Sep 09 #Python
Python pandas.DataFrame 找出有空值的行
Sep 09 #Python
You might like
Ajax+PHP 边学边练之四 表单
2009/11/27 PHP
php使用curl模拟登录后采集页面的例子
2013/11/04 PHP
PHP中feof()函数实例测试
2014/08/23 PHP
Yii2中SqlDataProvider用法示例
2016/09/22 PHP
帮助避免错误的Javascript陷阱清单
2009/05/31 Javascript
jquery 入门教程 [翻译] 推荐
2009/08/17 Javascript
JQuery的ajax获取数据后的处理总结(html,xml,json)
2010/07/14 Javascript
jQuery实现图片放大预览实现原理及代码
2013/09/12 Javascript
js的hasownproperty使用示例
2014/03/02 Javascript
网页实时显示服务器时间和javscript自运行时钟
2014/06/09 Javascript
javascript轻量级模板引擎juicer使用指南
2014/06/22 Javascript
使用C++为node.js写扩展模块
2015/04/22 Javascript
详解Bootstrap按钮
2016/01/04 Javascript
vue脚手架vue-cli的学习使用教程
2017/06/06 Javascript
VS Code转换大小写、修改选中文字或代码颜色的方法
2017/12/15 Javascript
原生JS实现随机点名项目的实例代码
2019/04/30 Javascript
JS使用iView的Dropdown实现一个右键菜单
2019/05/06 Javascript
vue项目中定义全局变量、函数的几种方法
2019/11/08 Javascript
js实现左右轮播图
2020/01/09 Javascript
js实现文章目录索引导航(table of content)
2020/05/10 Javascript
浅谈JS for循环中使用break和continue的区别
2020/07/21 Javascript
vue+高德地图实现地图搜索及点击定位操作
2020/09/09 Javascript
[14:56]教你分分钟做大人:巫医
2014/10/30 DOTA
举例详解Python中循环语句的嵌套使用
2015/05/14 Python
Python使用正则表达式获取网页中所需要的信息
2018/01/29 Python
python3+PyQt5 实现Rich文本的行编辑方法
2019/06/17 Python
python实现批量转换图片为黑白
2020/06/16 Python
美国快时尚彩妆品牌:Winky Lux(透明花瓣润唇膏)
2018/11/06 全球购物
英国领先的男装设计师服装独立零售商:Repertoire Fashion
2020/10/19 全球购物
中西医专业毕业生职业规划书
2014/02/24 职场文书
2014乡镇党政班子四风问题思想汇报
2014/09/14 职场文书
老干部局2015年度工作总结
2015/10/22 职场文书
Nginx设置日志打印post请求参数的方法
2021/03/31 Servers
SQLServer2008提示评估期已过解决方案
2021/04/12 SQL Server
Pytest实现setup和teardown的详细使用详解
2021/04/17 Python
MySQL GRANT用户授权的实现
2021/06/18 MySQL