Python3+pyQt5+QtDesignner实现窗口化猜数字游戏!

基于python和qt实现的聊天室 socket聊天室 立即下载

 描述:使用QtDesignner设计界面,pyQt5+python3实现主体方法制作的猜数字游戏。

游戏规则:先选择游戏等级:初级、中级、高级、魔鬼级,选择完游戏等级后点击“确定”,然后后台会自动生成一个与游戏等级匹配的“神秘数字”,游戏玩家在文本框内输入数字,再点击文本框旁边的“确定”,即可比较玩家所猜数字是否就是“神秘数字”。

游戏界面:

 

 

 

源代码:Python资源共享群:484031800

代码1: guessNumberGame.py (界面代码)

 1 # -*- coding: utf-8 -*-
 2 
 3 # Form implementation generated from reading ui file 'guessNumberGame.ui'
 4 #
 5 # Created by: PyQt5 UI code generator 5.11.3
 6 #
 7 # WARNING! All changes made in this file will be lost!
 8 
 9 from PyQt5 import QtCore, QtGui, QtWidgets
10 
11 class Ui_Form(object):
12     def setupUi(self, Form):
13         Form.setObjectName("Form")
14         Form.resize(555, 463)
15         self.label = QtWidgets.QLabel(Form)
16         self.label.setGeometry(QtCore.QRect(40, 90, 181, 31))
17         self.label.setObjectName("label")
18         self.comboBox = QtWidgets.QComboBox(Form)
19         self.comboBox.setGeometry(QtCore.QRect(230, 30, 171, 31))
20         self.comboBox.setObjectName("comboBox")
21         self.comboBox.addItem("")
22         self.comboBox.addItem("")
23         self.comboBox.addItem("")
24         self.comboBox.addItem("")
25         self.pushButton_2 = QtWidgets.QPushButton(Form)
26         self.pushButton_2.setGeometry(QtCore.QRect(420, 30, 91, 31))
27         self.pushButton_2.setObjectName("pushButton_2")
28         self.pushButton = QtWidgets.QPushButton(Form)
29         self.pushButton.setGeometry(QtCore.QRect(420, 90, 91, 31))
30         self.pushButton.setObjectName("pushButton")
31         self.textBrowser = QtWidgets.QTextBrowser(Form)
32         self.textBrowser.setGeometry(QtCore.QRect(40, 151, 471, 201))
33         self.textBrowser.setObjectName("textBrowser")
34         self.lineEdit = QtWidgets.QLineEdit(Form)
35         self.lineEdit.setGeometry(QtCore.QRect(230, 90, 171, 31))
36         self.lineEdit.setObjectName("lineEdit")
37         self.label_3 = QtWidgets.QLabel(Form)
38         self.label_3.setGeometry(QtCore.QRect(40, 30, 181, 31))
39         self.label_3.setObjectName("label_3")
40         self.pushButton_3 = QtWidgets.QPushButton(Form)
41         self.pushButton_3.setGeometry(QtCore.QRect(220, 380, 111, 41))
42         font = QtGui.QFont()
43         font.setFamily("Agency FB")
44         font.setPointSize(12)
45         self.pushButton_3.setFont(font)
46         self.pushButton_3.setObjectName("pushButton_3")
47 
48         self.retranslateUi(Form)
49         QtCore.QMetaObject.connectSlotsByName(Form)
50 
51     def retranslateUi(self, Form):
52         _translate = QtCore.QCoreApplication.translate
53         Form.setWindowTitle(_translate("Form", "猜数字游戏"))
54         self.label.setText(_translate("Form", "<html><head/><body><p><span style=\" font-size:14pt;\">请猜一个数字:</span></p></body></html>"))
55         self.comboBox.setItemText(0, _translate("Form", "初级:数字小于20"))
56         self.comboBox.setItemText(1, _translate("Form", "中级:数字小于30"))
57         self.comboBox.setItemText(2, _translate("Form", "高级:数字小于50"))
58         self.comboBox.setItemText(3, _translate("Form", "魔鬼级:数字小于100"))
59         self.pushButton_2.setText(_translate("Form", "确定"))
60         self.pushButton.setText(_translate("Form", "确定"))
61         self.label_3.setText(_translate("Form", "<html><head/><body><p><span style=\" font-size:14pt;\">请选择游戏难度:</span></p></body></html>"))
62         self.pushButton_3.setText(_translate("Form", "再来一局"))
界面代码

代码2: runG uess.py (方法主体代码)

 1 # -*- coding: utf-8 -*-
 2 import sys,random,time
 3 from PyQt5.QtWidgets import QApplication, QWidget, QMainWindow
 4 from guessNumberGame import Ui_Form
 5 
 6 times=1 #声明一个模块内的全局变量;用于记录猜数字的次数
 7 rand=20#声明一个模块内的全局变量;神秘数字的最大范围
 8 allTimes=7#声明一个模块内的全局变量;游戏最大次数
 9 class mwindow(QWidget, Ui_Form):
10     def __init__(self): #初始化
11         super(mwindow, self).__init__()  #这是对继承自父类的属性进行初始化。而且是用父类的初始化方法来初始化继承的属性。
12         self.setupUi(self)
13     #定义一个方法:从下拉框选择游戏难度
14     def gameLevel(self):
15         times=1
16         global rand,allTimes
17         level=self.comboBox.currentIndex()
18         if level==0:
19             rand=20
20             allTimes=7
21         if level==1:
22             rand=30
23             allTimes=10
24         if level==2:
25             rand=50
26             allTimes = 15
27         if level==3:
28             rand=100
29             allTimes = 20
30 
31     #定义一个方法:选择游戏难度后生成一个随机的神秘数字
32     def getRandNum(self):
33         global theNum,times
34         times=1           #每次选择游戏难度并点击“确定”后,已猜数字次数都重新归为1
35         w.pushButton.setEnabled(True)   #设置pushButton可点击(即选择了游戏难度之后,pushButton才可点击)
36         theNum=random.randint(1,rand)
37         self.textBrowser.append('开始游戏吧,你有%d次机会,数字范围:1-%d' %(allTimes,rand))
38         # self.textBrowser.append(str(theNum)) #直接显示神秘数字,用于调试时使用
39 
40     #定义一个方法:点击“确定”按钮的事件,用于比较所猜数字和神秘数字
41     def guess(self):
42         global allTimes,times #使用全局变量times
43         yourNum = int(self.lineEdit.text()) #从文本框获取到输入的数字,并转化为int型
44         if yourNum < theNum and times < allTimes:
45             text = "你猜的数字%d小了!你还有%d次机会,再猜!" %(yourNum,allTimes-times)
46             self.textBrowser.append(text)   #把提示信息写入textBrowser
47             times += 1
48         elif yourNum > theNum and times <allTimes:
49             text =  "你猜的数字%d大了!你还有%d次机会,再猜!" %(yourNum,allTimes-times)
50             self.textBrowser.append(text)
51             times += 1
52         elif yourNum == theNum and times <allTimes:
53             text = '你猜对了,就是%d,你一共猜了%s次!' % (theNum,times)
54             self.textBrowser.append(text)
55         else:
56             text = '%d次机会用完了你也没猜对!神秘数字其实是:%d' %(allTimes,theNum)
57             self.textBrowser.append(text)
58 
59     #定义一个方法:点击“再来一局”时触发的事件
60     def reStart(self):
61         self.textBrowser.clear()  #清除textBrowser内的内容
62         self.lineEdit.clear()     #清除lineEdit内的内容
63         w.pushButton.setEnabled(False)  #设置pushButton不可点击(即在选择游戏难度之前,pushButton不可点击)
64 
65 if __name__ == '__main__':
66     app = QApplication(sys.argv)
67     w = mwindow()
68     w.pushButton.setEnabled(False)  #设置pushButton不可点击(即在选择游戏难度之前,pushButton不可点击)
69     w.pushButton.clicked.connect(w.guess)   #绑定guess方法
70     w.pushButton_2.clicked.connect(w.getRandNum)
71     w.comboBox.currentIndexChanged.connect(w.gameLevel)
72     w.pushButton_3.clicked.connect(w.reStart)
73     w.show()
74     sys.exit(app.exec_()) #使程序一直循环运行直到主窗口被关闭终止进程(如果没有这句话,程
使用libx265对YUV进行h265编码 阅读详情

相关推荐

本地Qwen + ComfyUI 制作AI漫剧完整保姆级教程(2026年3月最新版)

本文介绍了一个零成本、本地化AI漫剧制作方案,整合Qwen大模型和ComfyUI工作流。Qwen负责剧本创作、分镜设计和提示词生成,ComfyUI处理图像生成、角色一致性保持和动态视频制作。该方案支持8GB显存设备运行(推荐12GB),包含详细安装指南和完整制作流程:从Ollama安装Qwen模型,到ComfyUI配置及必备节点安装,再到分镜生成、角色固定、批量出图和视频合成。文章还提供了常见问题解决方案和优化技巧,全流程1-2小时即可完成3分钟竖屏漫剧制作,适合新手和日更创作者。

posstos的博客 5576

QT项目——猜数字小游戏

学了这么久的QT,决定使用QT写一个猜数字的小游戏来锻炼自己对QT应用。 先使用一个stackedWidget来存放两个页面,一个页面是开始页面,另一个页面是游戏页面,不得不说这个容器真的很好使用,我一开始还准备使用字父窗口来实现主界面和游戏界面的切换。 主窗口的头文件代码: #ifndef GUESSNUM_H #define GUESSNUM_H #include <QWidget> #include<QString> #include"youwin.h" #inclu

weixin_45927758的博客 1万+

STM32 HAL库驱动BMP388:从寄存器配置到高精度气压温度采集

本文详细介绍了如何使用STM32 HAL库驱动BMP388气压温度传感器,实现高精度数据采集。内容涵盖从硬件连接到STM32CubeMX配置、关键寄存器解析、驱动源码编写,到核心补偿算法与海拔换算的完整流程,并提供了针对不同应用场景的优化配置与调试技巧,帮助开发者快速构建稳定可靠的测量方案。

weixin_29299807的博客 171

Qt小游戏-猜数字游戏(使用设计器完成界面设计)

使用QtCreator完成猜数字游戏详细流程

weixin_46074130的博客 2302

Java开发者必看:如何快速对接七大主流快递API(附完整代码示例)

本文为Java开发者提供了快速对接顺丰、京东、DHL等七大主流快递API的实战指南。文章深入剖析了不同API的认证、通信协议与参数差异,并提供了高可用的HTTP客户端配置、通用签名工具、SOAP请求处理以及可扩展的领域模型与适配层设计等完整代码示例,帮助开发者构建统一、健壮的物流集成框架,显著提升开发效率。

tech5的博客 728

GPS卫星轨道的理论和计算笔记分享

广义相对论预测,对比在时空弯曲度较大的地面上的原子钟,运行于时空弯曲度较小的卫星原子钟在地面上看起来更快,每天快约45us;反过来,当电压施加在晶体上时,晶体形状会扭曲(比如说伸长),而当晶体被施加上反向电压后,它将做相反的变形运动(比如缩短)。X轴:指向参考子午面与地球赤道的一个交点;从北黄极上方观察,地球北极在空间的运动轨迹是一个近似于以北黄极为中心的顺时针方向旋转的圆周,圆周半径等于。从上万年周期看,地球北极绕北黄极做大圆周运动,而从几年的短期来看,北极又在某一点处做局部的小幅椭圆运动。

m0_57139844的博客 2004

Qt初级猜数游戏

【代码】Qt初级猜拳游戏。

sgdhrjr的博客 291

CentOS 7 离线升级 OpenSSH 9.9p2 保姆级教程(含依赖包下载与常见报错解决)

本文提供了一份详尽的CentOS 7系统离线升级OpenSSH至9.9p2版本的完整教程。针对无外网环境,重点讲解了依赖包(尤其是OpenSSL 3.x)的离线下载与编译部署,并深入解决了编译过程中常见的“libcrypto.so缺失”等动态库链接错误。教程涵盖从环境准备、源码编译、服务配置到系统集成的全流程,最后还提供了关键的回滚方案与应急预案,是运维人员在内网环境中进行安全加固的实用指南。

weixin_29248313的博客 325

Qt小游戏之数字华容道(百行代码搭雏形,可玩;含源码+注释)

一、相信大家都知道华容道吧,这次做个数字华容道,样图如下 该游戏初始化如下所示: 下图为游戏通关的样图: 二、废话少说直接上代码 1、首先是代码文件分析 我的项目中包含内容如下所示: 其中CLabel.h、CLabel.cpp为继承QLabel的自定义类(在我的代码中使用的是Label作为文本显示的容器,因Label没有点击事件所以需要继承QLabel类自定义点击信号);然后CMainWindow.h、CMainWindow.cpp为调用CLabel的文件(具体看实现代码);ui文件中没有东西;mai

lw的博客 1万+

利用Pandas进行高效网络数据获取

本文将重点介绍如何使用Pandas库进行网络爬虫。爬取数据是获取互联网上信息的常见方式之一,而Pandas作为一种强大的数据处理和分析工具,为我们提供了便捷的方法来处理和清洗从网页上获取的数据。文章将从爬取网页数据开始,包括使用Python的Requests库发送HTTP请求获取网页内容,并使用Pandas的功能来解析和提取所需的数据。我们还将讨论如何处理网页中的表格数据、处理和清洗数据、保存数据到文件等常见任务。

ak_bingbing的博客 1440

通过分子模板构建随机分布在溶液中的纳米颗粒(一)

通过分子模板构建随机分布在溶液中的纳米颗粒 要实现的目标: 1、可以循环建立多个水分子溶液的模型; 2、针对不同水分子数,自动创建文件夹; 3、运行完毕将所有结果自动存储在对应文件夹里; 分子模板的具体教程请见我的博客: https://blog.youkuaiyun.com/qq_43689832/article/details/104443175 1、首先,我们先建立纳米颗粒的分子模板,命名为p_30.txt: 包括两种原子类型。具体格式如下: # LAMMPS molecule file makin.

Rockyoung 2651

QT学习之QT小游戏-----猜数字游戏

经过几天的qt视频学习,基本掌握了时间,信号和槽以及qt定时器的使用,还有QT UI设计器的一些布局,自己根据上课流程,写了一个小游戏,基本还算可以。ui布局基本都是使用设计器完成的,下面是部分源代码: #include "mainwindow.h" #include "ui_mainwindow.h" #include<QTime> #include<QMessageBox&g...

lobmo的博客 2277

STM32F4 SPI FLASH(W25Q128)驱动详解(含DMA+完整读写擦除+低功耗)

本文实现了一款基于STM32 HAL库的SPI Flash驱动,以W25Q128为例,提供了完整的初始化、读写、擦除、ID读取等功能。驱动集成了DMA传输、超时保护、页对齐写入等特性,支持扇区擦除、整片擦除、页写入及跨页缓冲写入。代码结构清晰,易于移植到其他SPI Flash型号(如W25Q64、W25Q16等),适用于数据存储、固件升级、文件系统等嵌入式场景。

kevin1499的博客 98

pyqt5 textbrowser显示print语句输出_Python3+pyQt5+QtDesignner实现窗口化猜数字游戏!

描述:使用QtDesignner设计界面,pyQt5+python3实现主体方法制作的猜数字游戏。游戏规则:先选择游戏等级:初级、中级、高级、魔鬼级,选择完游戏等级后点击“确定”,然后后台会自动生成一个与游戏等级匹配的“神秘数字”,游戏玩家在文本框内输入数字,再点击文本框旁边的“确定”,即可比较玩家所猜数字是否就是“神秘数字”。游戏界面:源代码:Python资源共享群:484031800代码1:...

weixin_39586915的博客 416

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

python3+pyQt5+QtDesignner实现窗口化猜数字游戏

描述:使用QtDesignner设计界面,pyQt5+python3实现主体方法制作的猜数字游戏。 游戏规则:先选择游戏等级:初级、中级、高级、魔鬼级,选择完游戏等级后点击“确定”,然后后台会自动生成一个与游戏等级匹配的“神秘数字”,游戏玩家在文本框内输入数字,再点击文本框旁边的“确定”,即可比较玩家所猜数字是否就是“神秘数字”。 游戏界面: 源代码: 代码1: guessNumberGame.p...

人生苦短, 还不用Python? 553

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

python怎么实现窗口化,基于python3 pyQt5 QtDesignner实现窗口化猜数字游戏功能

基于python3 pyQt5 QtDesignner实现窗口化猜数字游戏功能发布时间:2020-10-18 09:52:26来源:脚本之家阅读:99作者:白居不易1101描述:使用QtDesignner设计界面,pyQt5+python3实现主体方法制作的猜数字游戏。游戏规则:先选择游戏等级:初级、中级、高级、魔鬼级,选择完游戏等级后点击“确定”,然后后台会自动生成一个与游戏等级匹配的“神秘数字...

weixin_42302872的博客 567

python窗口化编程_基于python3 pyQt5 QtDesignner实现窗口化猜数字游戏功能

描述:使用QtDesignner设计界面,pyQt5+python3实现主体方法制作的猜数字游戏。游戏规则:先选择游戏等级:初级、中级、高级、魔鬼级,选择完游戏等级后点击“确定”,然后后台会自动生成一个与游戏等级匹配的“神秘数字”,游戏玩家在文本框内输入数字,再点击文本框旁边的“确定”,即可比较玩家所猜数字是否就是“神秘数字”。游戏界面:源代码:代码1: guessNumberGame.py (界...

weixin_39897746的博客 214

基于QT的猜数字小游戏

游戏界面 ui界面 头文件 #ifndef MYWIDGET_H #define MYWIDGET_H #include<QString> #include <QWidget> #include<QMovie> #include<QPushButton> namespace Ui { class MyWidget; } class MyWidget : public QWidget { Q_OBJECT public: explic

weixin_47414687的博客 1081

猜数字游戏_Qt

这个小栗子很多人都写过,写它仅仅是为了熟悉一些控件的使用,既不高大上也没其他想法。 1、界面构建,进入界面和操作界面。 界面简单说明: 1、主界面,显示猜数字游戏、时间、确定和退出。 2、采用stackedWidget控件,我使用的是qt5.2默认两个,但需要四个界面,选择“stackedwidget”,右击“insert page", 点击"after current page"。具体布

Irwin博客 2534

【python】基于socket和pyqt的简易聊天室

用pyqt + socket实现一个简单的聊天室 1.运行ClientApplication启动服务端2.运行ServerApplication启动客户端 3.参考资料 Python线程池及其原理和使用(超级详细)python socket编程详细介绍python3 字符串str和bytes的相互转换【快速调用】基于mvc架构的pyqt架构封装【pyqt、mysql、爬虫】python新冠疫情信息管理系统(详细图文)...

Zeeland的博客 1526

Python入门:如何用Python制作一个猜数字游戏

大家好,对于Python初学者来说,制作一个猜数字游戏是一个非常有趣的项目,它可以帮助你快速掌握Python的基本语法和逻辑控制。本文将手把手教你如何用Python编写一个简单的猜数字游戏,让你在实践中学习编程。猜数字游戏的规则非常简单:计算机随机生成一个1到100之间的整数。玩家尝试猜测这个数字。每次猜测后,程序会告诉玩家猜测的数字是“太大了”、“太小了”,还是“正确”。玩家继续猜测,直到猜中为止。游戏结束,显示玩家猜测的次数。在开始编写代码之前,你需要了解以下Python基础知识:变量和数据类型:用于存

biancheng_syz的博客 1781

利用Python PyQt5图形库开发的一个基于TCP协议仿QQ聊天PC软件工具源代码

利用Python PyQt5图形库开发的一个基于TCP协议仿QQ聊天PC软件工具源代码,首先要运行服务端Tcp_server.py,再运行login.py文件即可看到软件界面。

Python代码大全 1539

【Qt】2.4 做一个“猜数字”的游戏

使用对话框和Qt设计师来实现一个相当简单的小游戏。同时将通过这个程序来看布局的隐藏和显示是如何来影响窗口界面的变化的。 新建一个Qt项目,把Qt Creator默认给的mainwindow.h、mainwindow.cpp、mainwindow.ui三个文件删除掉,这里我们只创建一个对话框。虽然也会创建出类似的这3个文件。 先来设计一下界面,在Qt设计师中新建一个【Dialog without...

weixin_30256505的博客 341

python猜数字游戏

再困难的时候,也要把心交给希望

2401_82455776的博客 1268

基于python实现的聊天室(服务端)

基于python聊天室

m0_61143764的博客 6595
上一篇: 实战Python图形文件操作基本编程!
下一篇: 开启 Python 组件 Boto3 在 IDE 中的智能提示!
普通网友
博客等级 码龄7年 438粉丝 263原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值