PyQT5速成教程-1 简介与环境搭建
本文由 沈庆阳 所有,转载请与作者取得联系!
PyQt简介
一个良好的界面是人机交互中十分重要的一环。
Python作为脚本语言,起初并未拥有GUI开发的部分。但随着其开放的扩展性,使得Python不断壮大,有PyQt、Tkinter,PyGUI等GUI Toolkit以供GUI开发。
PyQt是Python语言的GUI编程解决方案之一。可以用来代替Python内置的Tkinter。其它替代者还有PyGTK、wxPython等。与Qt一样,PyQt是一个自由软件。PyQt是PyKDE的基础。
摘自:维基百科
自4.5版本以后,PyQt同时支持Python 2.x与Python 3.x。但是在API方面有所区别,最主要的是运行在Python 3.x下的PyQt不使用QString,而是str。另外,之前为了避开Python 2.x关键词限制的exec_()、print_()两个函数现在重命名为exec(),print()。
PyQt的官方网站:
Riverbank | Software | PyQt | What is PyQt?
目前PyQt5的最新版本为5.10.1。
Python2与Python3的区别
1、Python2与Python3的语法结构类似,但不完全兼容,如print等。
2、Python3的默认编码为UTF-8,对PyQt5的中文编码兼容好,不需要对中文字符串进行转义等操作。
3、PyQt5默认只支持Python3,对Python2则需要源码编译,较为繁琐。
PyQt5环境搭建
由于PyQt5的环境搭建在不同的操作系统下大同小异,因此这里选用Windows环境下搭建PyQt5开发环境。其他,如MacOS Linux各个发行版的环境搭建,后续有时间则补全。
Windows下搭建PyQt5开发环境
软件需求:
Python3
PyQt5
IDE(IDE自行选择,有PyCharm、Atom、Sublime、Eric等)
Python3下载地址:https://www.python.org/downloads/
PyQt5安装方法:使用PyPI安装
Python3的安装
首先是Python3的安装,这里我们打开相应版本(这里选择的是Python3.6.5)的下载界面,找到最下面的各个平台的各种版本:

由于我们是Windows 10 64位的版本,因此选择Windows x86-64 executable installer离线安装包。
选择安装地址,可选将Python加入环境变量,之后一路Next完成安装。

安装完成之后,打开命令行,输入python命令,如果出现如下界面则证明安装成功,这时输入exit()退出Python Shell。

如果没有将Python加入环境变量的,只需找到Python的安装路径(如:C:/Python36),将(C:/Python36和C:/Python36/Scripts)其加入系统变量Path中即可。
PyQt5的安装
安装PyQt5则相对较为简单。熟悉pip命令的只需通过如下命令即可完成对PyQt5的安装:
pip install PyQt5
pip install PyQt5-tools
安装完成之后,命令行会出现如下提示:

使用pip命令安装完成之后,PyQt5的包会出现在Python目录下Lib/site-packages目录下。

测试PyQt5
在安装完成Python3与PyQt5之后,我们新建一个QtTest.py的Python脚本,输入如下代码:
import sys
from PyQt5 import QtWidgits, QtCore
app = QtWidgets.QApplication(sys.argv)
widget = QtWidgets.QWidget()
widget.resize(400, 400)
widget.setWindowTitle('Hello World')
widget.show()
sys.exit(app.exec__())
保存之后,回到命令行,进入相应目录下,通过
python QtTest.py
来运行。

上述代码创建了一个QWidget对象,并设置其大小为400*400,标题为“Hello World”。
PyQt5开发IDE
笔者使用的是PyCharm进行的PyQt5开发。在PyCharm中的包管理与PyPI不一样。PyCharm拥有可视化的包管理工具,具体在File -> Settings中找到Project面板下的Project Interpreter。

其右侧面板显示的就是我们已经安装了的包,并且可以通过加号来安装新的包。

在这一节,我们主要讲了与PyQt5环境搭建的相关知识。那么下一节我们将从QtDesigner入手,进行Python GUI开发的实战。
作者:养薛定谔的猫
链接:https://www.jianshu.com/p/c61fc80ad6b3
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
PyQT5速成教程-1 简介与环境搭建的更多相关文章
- qt学习教程1.qt开发环境搭建
qt学习教程1.qt开发环境搭建 首先下载qt 下载地址:http://download.qt.io/archive/qt/ 此教程使用的版本为5.1.1 下载好后,打开安装包,然后点下一步 选择一个 ...
- Bootstrap:教程、简介、环境安装
ylbtech-Bootstrap:教程.简介.环境安装 1. Bootstrap 教程返回顶部 1. Bootstrap 教程 Bootstrap,来自 Twitter,是目前最受欢迎的前端框架.B ...
- 简介及环境搭建跑通Hello
简介及环境搭建跑通Hello Spring Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用.是为了解决企业应用程序开 ...
- Android基础新手教程——1.2 开发环境搭建
Android基础新手教程--1.2 开发环境搭建 标签: Android基础新手教程 如今主流的Android开发环境有: ①Eclipse + ADT + SDK ②Android Studio ...
- Redis入门很简单之一【简介与环境搭建】
Redis入门很简单之一[简介与环境搭建] 博客分类: NoSQL/Redis/MongoDB redisnosqlmemcached缓存中间件 [Redis简介] <一>. NoSQL ...
- pyqt5 -——介绍及和pycharm的环境搭建
pyqt5简介: yQt5的类存在与如下模块当中: ● QtCore ● QtGui ● QtWidgets ● QtMultimedia ● QtBluetooth ● QtNetwork ● Qt ...
- 1.SpringMVC的简介和环境搭建
SpringMVC的简介: SpringMVC 和 Struts一样是一个MVC框架,和Spring无缝连接,和struts2类似, Spring MVC属于SpringFrameWork的后续产品, ...
- Java学习不走弯路教程(7.Eclipse环境搭建)
7.Eclipse环境搭建 在前几章,我们熟悉了DOS环境下编译和运行Java程序,对于大规模的程序编写,开发工具是必不可少的.Java的开发工具比较常用的是Eclipse.在接下来的教程中,我们将基 ...
- 一、springBoot简介与环境搭建
前言:学习计划 1.springBoot环境搭建 2.springBoot入门 3.srpingBoot整合Mybatis 4.springBoot整合Redis,Redis集群 5.springBo ...
随机推荐
- HDU5988/nowcoder 207G - Coding Contest - [最小费用最大流]
题目链接:https://www.nowcoder.com/acm/contest/207/G 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5988 ...
- [No0000FD]C# 正则表达式
正则表达式 是一种匹配输入文本的模式..Net 框架提供了允许这种匹配的正则表达式引擎.模式由一个或多个字符.运算符和结构组成. 定义正则表达式 下面列出了用于定义正则表达式的各种类别的字符.运算符和 ...
- Ubuntu下文件所属用户的说明
最近做项目发现,当你使用sudo建立新的文件或者目录时,该文件的所有者是root用户,此种情况下,使用tensorflow加速就会报错,除非你把文件的权限改成777,但是这样不安全. 纠正的做法是,建 ...
- [yum] yum使用光盘安装或更新软件
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_ ...
- 树和二叉树->基础知识
树的表示方法 1 一般表示法 2 广义表表示法 3 凹入表示法 树的基本术语: 树:n(n>=0)个结点的有限集 结点:包含一个数据元素及若干指向其子树的分支 结点的度:结点拥有的子树数成为结点 ...
- 第三方python 加密库 --- cryptography
1,安装依赖 pip install cryptography 2,生成秘钥 from cryptography.fernet import Fernet #秘钥#随机生成秘钥 cipher_key ...
- matlab中的常用函数
1.将变量a保存到a.txt,每个值中间用tab隔开 dlmwrite('a.txt',a,'\t'); 2.对比两个矩阵是否完全一样 isequal(a,b); %返回logic=1,则完全相同 3 ...
- c语言数组应用
#include <stdio.h> #define SIZE 5 int main(void) { int sum[3]={0},sum2[SIZE]={0},i,sum1=0; dou ...
- 20170720 Celery 异步任务处理到Sql Server 发生死锁
-- 1. 异常提示情况如下: 需要解决为什么引起死锁 -- 叹气 原因: 在使用Celery 启用了 配置参数 CELERYD_CONCURRENCY = 10 表示开了10块线程池. 有好处, ...
- HTTP response 添加body
在拦截器中进行拦截操作时,想要给response添加body,如何操作? /** * 返回JSON数据 * @param response * @param obj * @throws Excepti ...