使用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基础教程之python消息摘要算法使用示例
Feb 10 Python
Python异常学习笔记
Feb 03 Python
python通过post提交数据的方法
May 06 Python
django+js+ajax实现刷新页面的方法
May 22 Python
Python获取当前页面内所有链接的四种方法对比分析
Aug 19 Python
Python采集猫眼两万条数据 对《无名之辈》影评进行分析
Dec 05 Python
python pyinstaller 加载ui路径方法
Jun 10 Python
Python自动抢红包教程详解
Jun 11 Python
Python SSL证书验证问题解决方案
Jan 13 Python
pytorch对梯度进行可视化进行梯度检查教程
Feb 04 Python
如何在Python 游戏中模拟引力
Mar 27 Python
哈工大自然语言处理工具箱之ltp在windows10下的安装使用教程
May 07 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
深入php socket的讲解与实例分析
2013/06/13 PHP
PHP使用xmllint命令处理xml与html的方法
2014/12/15 PHP
php根据某字段对多维数组进行排序的方法
2015/03/07 PHP
php提取身份证号码中的生日日期以及验证是否为成年人的函数
2015/09/29 PHP
Symfony2使用Doctrine进行数据库查询方法实例总结
2016/03/18 PHP
php PDO判断连接是否可用的实现方法
2017/04/03 PHP
PHP面向对象五大原则之单一职责原则(SRP)详解
2018/04/04 PHP
JavaScript判断两种格式的输入日期的正确性的代码
2007/03/25 Javascript
SuperSlide标签切换、焦点图多种组合插件
2015/03/14 Javascript
Jquery幻灯片特效代码分享--打开页面随机选择切换方式(3)
2015/08/15 Javascript
javascript弹性运动效果简单实现方法
2016/01/08 Javascript
js设置和获取自定义属性的方法
2016/10/20 Javascript
canvas实现钟表效果
2017/02/13 Javascript
Vue.js 2.0学习教程之从基础到组件详解
2017/04/24 Javascript
JS实现禁止用户使用Ctrl+鼠标滚轮缩放网页的方法
2017/04/28 Javascript
解决BootStrap Fileinput手机图片上传显示旋转问题
2017/06/01 Javascript
详解Vue 全局变量,局部变量
2019/04/17 Javascript
vue实现密码显示与隐藏按钮的自定义组件功能
2019/04/23 Javascript
20道JS原理题助你面试一臂之力(必看)
2019/07/22 Javascript
JavaScript利用键盘码控制div移动
2020/03/19 Javascript
Javascript查看大图功能代码实现
2020/05/07 Javascript
[49:35]KG vs SECRET 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
pip安装py_zipkin时提示的SSL问题对应
2018/12/29 Python
Django框架搭建的简易图书信息网站案例
2019/05/25 Python
使用TensorFlow对图像进行随机旋转的实现示例
2020/01/20 Python
python生成并处理uuid的实现方式
2020/03/03 Python
浅谈python锁与死锁问题
2020/08/14 Python
HTML5 window/iframe跨域传递消息 API介绍
2013/08/26 HTML / CSS
黄色火烈鸟:De Gele Flamingo
2019/03/18 全球购物
美国智能家居专家:tink
2019/06/04 全球购物
学习心得体会
2014/01/01 职场文书
高一学生评语大全
2014/04/25 职场文书
2014报到证办理个人委托书
2014/10/08 职场文书
法定代表人授权委托书格式
2014/10/14 职场文书
贷款担保书
2015/01/20 职场文书
邀请函样本
2015/02/02 职场文书