(一)Qt与Python—PySide的简介及安装
1.Pyside的简介
PySide(在本文中指代PySide2和PySide6) 是一个Python的图形化界面(GUI)库,由C++版的Qt开发而来,在用法上基本与C++版没有特别大的差异。PySide 是一个python绑定的跨平台图形化界面 Qt库。
PySide是由诺基亚公司开发的,简单来说就是其Qt库的Python移植(原先是C++的)。目前,支持Python的Qt库有两个PyQt和PySide,PySide是PyQt 的兄弟,常被网友戏称为诺基亚的亲儿子。PySide是一个免费的软件,与PyQt不同之处在于使用了LGPL,允许PySide免费的开发商业软件。
PySide和PyQt的关系,前者是Qt公司的产品,后者是第三方公司的产品,二者用法基本相同。不过,在使用协议上却有很大差别,PySide可以在LGPL协议下使用,PyQt则在GPL协议下使用。
PySide的主要对手是PyQt。PyQt出现得比PySide早,但是PySide血统更纯正一些(毕竟是亲儿子)。但是具体应用两者差不多,因为目前Qt的IDE也没有把Python弄进去,要实现同样功能两者要进行的操作大同小异。PyQt个人应用免费,但是商业应用要收钱,相比下PySide的个人和商业双免费的策略更让人放心一些。
PySide为我们提供了两种开发界面的方式,一种是QtWidget,早期比较常见;另一种叫QML,是一种新型的开发方式,这也是Qt正在努力推广的开发方式。
2.pyside的安装
首先在Anaconda中,安装Pysidde,其各种版本的正确搭配:
pyside2:Qt5,Python2.7/Python>=3.5
pyside6: Qt6, Python>=3.6
pip install PySide6
其中 pyside 安装包大概112M,可能需要等待安装几分钟,安装完成后:有的朋友,网络比较慢,可以指定国内的安装源,下载安装。比如,使用豆瓣源下载安装:
pip install pyside2 -i https://pypi.douban.com/simple/
下一步验证安装,ananconda,下输入如下的代码以检查:
import PySide6.QtCore
# 打印PySide6版本
print(PySide6.__version__)
# 打印用于编译PySide6的Qt版本
print(PySide6.QtCore.__version__)
3.pyside的Hello world程序
import random
import sys
from PySide6.QtCore import Qt, Slot
from PySide6.QtWidgets import (QApplication, QLabel, QPushButton,
QVBoxLayout, QWidget)
from __feature__ import snake_case, true_property
class MyWidget(QWidget):
def __init__(self):
QWidget.__init__(self)
self.hello = [
"Hallo Welt",
"你好,世界",
"Hei maailma",
"Hola Mundo",
]
self.button = QPushButton("Click me!")
self.message = QLabel("Hello World")
self.message.alignment = Qt.AlignCenter
self.layout = QVBoxLayout(self)
self.layout.add_widget(self.message)
self.layout.add_widget(self.button)
# Connecting the signal
self.button.clicked.connect(self.magic)
@Slot()
def magic(self):
self.message.text = random.choice(self.hello)
if __name__ == "__main__":
app = QApplication(sys.argv)
widget = MyWidget()
widget.show()
sys.exit(app.exec_())
其运行结果如下:
4.参考文献及网站连接
https://www.byhy.net/tut/py/gui/qt_01/
https://doc.qt.io/qtforpython-6/gettingstarted/porting_from2.html
https://www.qt.io/qt-for-python
https://blog.csdn.net/qq_41185868/article/details/126895643
(一)Qt与Python—PySide的简介及安装的更多相关文章
- 【python】-- MySQL简介、安装、操作
MySQL简介.安装.操作 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据.我们也可以将数据存储 ...
- python paramiko模块简介及安装
一:简介 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. 由于使用的是python这样的能够跨平台运行的语言,所以所有python支 ...
- python框架Django简介与安装
Django简介 关注公众号"轻松学编程"了解更多. 发布于2005年,最负盛名且成熟的Python网络框架 最初用来制作在线新闻的Web站点 开源Web框架,遵守BSD协议 BS ...
- Maya Max python PySide集成 shiboken版本对应关系
Maya_Max _python_PySide集成_shiboken版本对应关系 1.如何查看 Maya Max 集成的 Python版本: Maya:在 Maya 的安装目录下的 bin 文件夹中找 ...
- Python生态环境简介[转]
Python生态环境简介 作者: Mir Nazim 原文: Python Ecosystem - An Introduction 译者: dccrazyboy 原译: Python生态环境简介 当 ...
- PYTHON简介及安装
Python简介 Python是一种广泛使用的高层次,通用,解释,动态编程语言.它的设计理念强调代码的可读性,它的语法允许程序员表达更少的代码的概念比将在可能语言如C ++或Java.该语言提供旨在使 ...
- Python初识与简介【开篇】
目录 1.扯淡 2.Python历史 3.Python简介 4.Python应用 5.为什么是python而不是其他语言? 6.Python的种类 7.Python的特点 8.Python设计哲学 9 ...
- (转)python生态环境简介
Python生态环境简介 作者: Mir Nazim 原文: Python Ecosystem - An Introduction 译者: dccrazyboy 原译: Python生态环境简介 当 ...
- Python 3 mysql 简介安装
Python 3 mysql 简介安装 一.数据库是什么 1. 什么是数据库(DataBase,简称DB) 数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合.数据 ...
- python简介与安装
Python简介和环境搭建 于 20世纪80年代末,Guido van Rossum发明了Python,初衷据说是为了打发圣诞节的无趣.1991年首次发布,是ABC语言的继承,同时也是一种脚本语言.取 ...
随机推荐
- 【Python】词频统计
需求:一篇文章,出现了哪些词?哪些词出现得最多? 英文文本词频统计 英文文本:Hamlet 分析词频 统计英文词频分为两步: 文本去噪及归一化 使用字典表达词频 代码: #CalHamletV1.py ...
- CSS实现单行显示文本并适应浏览器大小
实现 .text { white-space:nowrap; /*文本不换行*/ overflow: hidden; /*超出文本隐藏*/ text-overflow:ell ...
- 生命游戏Delphi实现
生命游戏,康威生命游戏(Game of Life),剑桥大学约翰·何顿·康威设计的计算机程序. 生命游戏没有游戏玩家各方之间的竞争,也谈不上输赢,可以把它归类为仿真游戏.事实上,也是因为它模拟和显示的 ...
- Rider搭建C#开发环境
1.安装DotNet-SDK 下载链接:https://dotnet.microsoft.com/download 安装完成后配置环境变量,然后在cmd窗口运行:dotnet --info命令显示当前 ...
- GeoIP库商业版调研-支持IPV6
背景 因需要支持ipv6网络,目前所使用的GeoIP库无法解析或者很少量的能解析出IPV6的IP地址位置信息,所以需要更新最新的GeoIP库文件.目的配置在Nginx或者服务直接调用使用,从而获取城市 ...
- EF Core 10 现已支持 LeftJoin 和 RightJoin 运算符查询了!
前言 最近发现 EF Core 10 中的新增功能引入了在 LINQ 中支持 LeftJoin 和 RightJoin 运算符查询的新功能.在 EF Core 10 之前,开发人员需要通过复杂的组合查 ...
- 【笔记】Excel 2021|重要篇|(一)VBA精准控制选择范围、VBA提高运行速度并降低运行时的内存消耗
最近总是遇到只有Excel表.没有数据库的情况,不太可能让别人搭Python环境来建数据库,但对常用数据库的使用也不太熟悉,也没买服务器不能让别人远程操控.再加上Python操作Excel的效率令 ...
- 【MOOC】华中科技大学操作系统慕课答案-第1~3章单元测试
单选 1 下列说法错误的是 . A. 手工操作阶段,资源利用率低的原因是因为程序的准备和撤销都需要手工完成. B. 单道批处理系统中CPU和外设交替工作和空闲. √C. 单道批处理系统效率之所以比手工 ...
- MySQL 8.0 修改密码 新建用的正确方式
mysql 更新完密码,总是拒绝连接.登录失败?MySQL8.0 不能通过直接修改 mysql.user 表来更改密码.正确更改密码的方式备注: 清空root密码MySQL8.0 不能通过直接修改 m ...
- 如何用JavaScript纯前端来实现下载脚本
1.javascript脚本 function downloadFile(data, fileName, type="text/plain") { // 创建不可见的元素 cons ...