本文由 沈庆阳 所有,转载请与作者取得联系!

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完成安装。

 
完成Python3的安装

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

 
命令行Python Shell

如果没有将Python加入环境变量的,只需找到Python的安装路径(如:C:/Python36),将(C:/Python36和C:/Python36/Scripts)其加入系统变量Path中即可。

PyQt5的安装

安装PyQt5则相对较为简单。熟悉pip命令的只需通过如下命令即可完成对PyQt5的安装:

pip install PyQt5
pip install PyQt5-tools

安装完成之后,命令行会出现如下提示:

 
pip安装

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

 
PyQt5包所在位置

测试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。

 
Project Interpreter

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

 
安装新的包

在这一节,我们主要讲了与PyQt5环境搭建的相关知识。那么下一节我们将从QtDesigner入手,进行Python GUI开发的实战。

作者:养薛定谔的猫
链接:https://www.jianshu.com/p/c61fc80ad6b3
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

PyQT5速成教程-1 简介与环境搭建的更多相关文章

  1. qt学习教程1.qt开发环境搭建

    qt学习教程1.qt开发环境搭建 首先下载qt 下载地址:http://download.qt.io/archive/qt/ 此教程使用的版本为5.1.1 下载好后,打开安装包,然后点下一步 选择一个 ...

  2. Bootstrap:教程、简介、环境安装

    ylbtech-Bootstrap:教程.简介.环境安装 1. Bootstrap 教程返回顶部 1. Bootstrap 教程 Bootstrap,来自 Twitter,是目前最受欢迎的前端框架.B ...

  3. 简介及环境搭建跑通Hello

    简介及环境搭建跑通Hello Spring Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用.是为了解决企业应用程序开 ...

  4. Android基础新手教程——1.2 开发环境搭建

    Android基础新手教程--1.2 开发环境搭建 标签: Android基础新手教程 如今主流的Android开发环境有: ①Eclipse + ADT + SDK ②Android Studio ...

  5. Redis入门很简单之一【简介与环境搭建】

    Redis入门很简单之一[简介与环境搭建] 博客分类: NoSQL/Redis/MongoDB redisnosqlmemcached缓存中间件  [Redis简介] <一>. NoSQL ...

  6. pyqt5 -——介绍及和pycharm的环境搭建

    pyqt5简介: yQt5的类存在与如下模块当中: ● QtCore ● QtGui ● QtWidgets ● QtMultimedia ● QtBluetooth ● QtNetwork ● Qt ...

  7. 1.SpringMVC的简介和环境搭建

    SpringMVC的简介: SpringMVC 和 Struts一样是一个MVC框架,和Spring无缝连接,和struts2类似, Spring MVC属于SpringFrameWork的后续产品, ...

  8. Java学习不走弯路教程(7.Eclipse环境搭建)

    7.Eclipse环境搭建 在前几章,我们熟悉了DOS环境下编译和运行Java程序,对于大规模的程序编写,开发工具是必不可少的.Java的开发工具比较常用的是Eclipse.在接下来的教程中,我们将基 ...

  9. 一、springBoot简介与环境搭建

    前言:学习计划 1.springBoot环境搭建 2.springBoot入门 3.srpingBoot整合Mybatis 4.springBoot整合Redis,Redis集群 5.springBo ...

随机推荐

  1. {python之IO多路复用} IO模型介绍 阻塞IO(blocking IO) 非阻塞IO(non-blocking IO) 多路复用IO(IO multiplexing) 异步IO(Asynchronous I/O) IO模型比较分析 selectors模块

    python之IO多路复用 阅读目录 一 IO模型介绍 二 阻塞IO(blocking IO) 三 非阻塞IO(non-blocking IO) 四 多路复用IO(IO multiplexing) 五 ...

  2. 【瞎搞题】gym226123 L. For the Honest Election

    http://codeforces.com/gym/226123/problem/L 题解:手摸几组数据,发现一个规律:将n 质因数分解,答案就是 每个质因数/2+1后再乘起来. 然后考虑2的情况: ...

  3. gateone安装使用

    下载地址 https://github.com/liftoff/GateOne unzip GateOne-master.zip cd GateOne-master/ python setup.py ...

  4. bootstrape学习

    bootstrape学习 已分享到有道上:http://note.youdao.com/share/?id=076fb6314c99c742a79f6fb66b2a58b0&type=note ...

  5. Flink – JobManager.submitJob

    JobManager作为actor, case SubmitJob(jobGraph, listeningBehaviour) => val client = sender() val jobI ...

  6. ANT入门&用ANT编译java项目

    第一次接触ant是15年在无锡某软件公司实习时,当时的项目是由多个模块组成,开发分成模块开发的几个小组.为了提高开发效率,采用这种编译项目的方法. 最近接触到flex项目,采用eclipse自动编译的 ...

  7. 将获得datebox值的文本形式转为日期格式

    在使用datebox时,已选择结束日期后,再次选择开始日期.此时判断开始日期不能大于结束日期. datebox的onSelect: function (date){}事件传入的参数是日期类型,而使用d ...

  8. teamviewer 卸载干净

    1 点击开始菜单,控制面板,卸载程序,找到软直接卸载2 按住Ctrl+R,输入%AppData%,删除teamview 相关文件夹3 输入regedit打开注册表HKEY_LOCAL_MACHINE\ ...

  9. Django 之Redis配置

    目的:访问服务器频繁的读取数据库 ,会耗损服务器性能及降低用户体验,为此引入Redis 1,安装 redis(2.10.6兼容性更好) pip install redis 2,settings.py配 ...

  10. collection my favoriate websites

    802.1x认证客户端linux版安装 http://blog.csdn.net/StarChunli/article/details/50918121 在U盘上安装kali linux http:/ ...