iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >怎么用PyQt5制作一个猜数字小游戏
  • 406
分享到

怎么用PyQt5制作一个猜数字小游戏

2023-06-29 08:06:12 406人浏览 八月长安
摘要

今天小编给大家分享一下怎么用PyQt5制作一个猜数字小游戏的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。开始之前,直接来看一

今天小编给大家分享一下怎么用PyQt5制作一个猜数字小游戏的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

开始之前,直接来看一下实现后的效果。

怎么用PyQt5制作一个猜数字小游戏

将PyQt5的相关模块直接导入即可。

from PyQt5.QtGui import *from PyQt5.QtCore import *from PyQt5.QtWidgets import *

为了照顾一下新关注的童鞋,这里介绍一下PyQt5的安装,还是采用pip的安装方式。

pip install PyQt5

将准备好的样式导入到代码块中。

# 主题样式模块引用from QCandyUi import CandyWindow

文件和随机数相关的模块导入进来。

import sysimport random

界面编写函数 init_ui,初始化UI界面及页面布局代码块。

 def init_ui(self):        self.setWindowTitle('猜数字游戏  公众号:[python 集中营]')        self.setWindowIcon(QIcon('数字.ico'))        self.setFixedSize(500, 350)        self.msg = QLabel()        self.msg.setText('猜数字游戏')        self.msg.setStyleSheet(            'font-size:50px;text-align:center;font-weight:bold;font-family:"Microsoft JhengHei";')        self.msg.setAlignment(Qt.AlignCenter)        self.in_num = QLineEdit()        self.in_num.setPlaceholderText('请输入目标数字')        self.in_num.setAlignment(Qt.AlignCenter)        self.in_num_btn = QPushButton()        self.in_num_btn.setText('就是它了')        self.in_num_btn.clicked.connect(self.in_num_btn_click)        self.tar_num_btn = QPushButton()        self.tar_num_btn.setText('显示数字')        self.tar_num_btn.clicked.connect(self.tar_num_btn_click)        self.tar_num = QLabel()        self.tar_num.setText('#####')        self.tar_num.setFixedWidth(50)        self.generate_num_btn = QPushButton()        self.generate_num_btn.setText('  生成目标数字  ')        self.generate_num_btn.clicked.connect(self.generate_num_btn_click)        hbox = QHBoxLayout()        hbox.addWidget(self.tar_num)        hbox.addWidget(self.tar_num_btn)        hbox.addStretch(1)        hbox.addWidget(self.generate_num_btn)        vbox = QVBoxLayout()        vbox.addStretch(1)        vbox.addWidget(self.msg)        vbox.addWidget(self.in_num)        vbox.addWidget(self.in_num_btn)        vbox.addStretch(1)        vbox.addLayout(hbox)        self.setLayout(vbox)

槽函数 generate_num_btn_click,用于生成猜数字游戏的目标数字。

 def generate_num_btn_click(self):        tar_num = random.randint(1, 99)        self.num = tar_num        # 重置最大最小值        self.max_num = 100  # 当前最大值        self.min_num = 0  # 当前最小值

槽函数 tar_num_btn_click,用于显示或隐藏目标数字。

  def tar_num_btn_click(self):        if self.num != 0 and self.tar_num_btn.text().strip() == '显示数字':            self.tar_num.setText(str(self.num))            self.tar_num_btn.setText('隐藏数字')        elif self.tar_num_btn.text().strip() == '隐藏数字':            self.tar_num.setText('#####')            self.tar_num_btn.setText('显示数字')

槽函数 in_num_btn_click,用于处理猜数字实现的主要代码逻辑。

 def in_num_btn_click(self):        try:            in_num = int(self.in_num.text().strip())            if in_num < self.min_num or in_num >= self.max_num:                pass            else:                if self.num == 0:                    self.msg.setText('没有目标数字')                elif in_num == self.num:                    self.msg.setText('恭喜你,猜对了')                else:                    if in_num < self.num:                        self.msg.setText(str(in_num) + ' - ' + str(self.max_num))                        self.min_num = in_num                    elif in_num > self.num:                        self.msg.setText(str(self.min_num) + ' - ' + str(in_num))                        self.max_num = in_num        except:            self.msg.setText('请输入数字')

最后,通过调用主题模块的蓝色主题样式是整个App变得漂亮。

CandyWindow.createWindow(GuessNumber(), theme='blue', title='猜数字游戏  公众号:[Python 集中营]',                                 ico_path='数字.ico')

完整代码

# -*- coding:utf-8 -*-# @author Python 集中营# @date 2022/2/10# @file test1.py# done# GUI猜数字游戏from PyQt5.QtGui import *from PyQt5.QtCore import *from PyQt5.QtWidgets import *# 主题样式模块引用from QCandyUi import CandyWindowimport sysimport randomclass GuessNumber(QWidget):    def __init__(self):        super(GuessNumber, self).__init__()        self.num = 0  # 目标数字        self.max_num = 100  # 当前最大值        self.min_num = 0  # 当前最小值        self.init_ui()    def init_ui(self):        self.setWindowTitle('猜数字游戏  公众号:[Python 集中营]')        self.setWindowIcon(QIcon('数字.ico'))        self.setFixedSize(500, 350)        self.msg = QLabel()        self.msg.setText('猜数字游戏')        self.msg.setStyleSheet(            'font-size:50px;text-align:center;font-weight:bold;font-family:"Microsoft JhengHei";')        self.msg.setAlignment(Qt.AlignCenter)        self.in_num = QLineEdit()        self.in_num.setPlaceholderText('请输入目标数字')        self.in_num.setAlignment(Qt.AlignCenter)        self.in_num_btn = QPushButton()        self.in_num_btn.setText('就是它了')        self.in_num_btn.clicked.connect(self.in_num_btn_click)        self.tar_num_btn = QPushButton()        self.tar_num_btn.setText('显示数字')        self.tar_num_btn.clicked.connect(self.tar_num_btn_click)        self.tar_num = QLabel()        self.tar_num.setText('#####')        self.tar_num.setFixedWidth(50)        self.generate_num_btn = QPushButton()        self.generate_num_btn.setText('  生成目标数字  ')        self.generate_num_btn.clicked.connect(self.generate_num_btn_click)        hbox = QHBoxLayout()        hbox.addWidget(self.tar_num)        hbox.addWidget(self.tar_num_btn)        hbox.addStretch(1)        hbox.addWidget(self.generate_num_btn)        vbox = QVBoxLayout()        vbox.addStretch(1)        vbox.addWidget(self.msg)        vbox.addWidget(self.in_num)        vbox.addWidget(self.in_num_btn)        vbox.addStretch(1)        vbox.addLayout(hbox)        self.setLayout(vbox)    def generate_num_btn_click(self):        tar_num = random.randint(1, 99)        self.num = tar_num        # 重置最大最小值        self.max_num = 100  # 当前最大值        self.min_num = 0  # 当前最小值    def tar_num_btn_click(self):        if self.num != 0 and self.tar_num_btn.text().strip() == '显示数字':            self.tar_num.setText(str(self.num))            self.tar_num_btn.setText('隐藏数字')        elif self.tar_num_btn.text().strip() == '隐藏数字':            self.tar_num.setText('#####')            self.tar_num_btn.setText('显示数字')    def in_num_btn_click(self):        try:            in_num = int(self.in_num.text().strip())            if in_num < self.min_num or in_num >= self.max_num:                pass            else:                if self.num == 0:                    self.msg.setText('没有目标数字')                elif in_num == self.num:                    self.msg.setText('恭喜你,猜对了')                else:                    if in_num < self.num:                        self.msg.setText(str(in_num) + ' - ' + str(self.max_num))                        self.min_num = in_num                    elif in_num > self.num:                        self.msg.setText(str(self.min_num) + ' - ' + str(in_num))                        self.max_num = in_num        except:            self.msg.setText('请输入数字')if __name__ == '__main__':    app = QApplication(sys.argv)    w = CandyWindow.createWindow(GuessNumber(), theme='blue', title='猜数字游戏  公众号:[Python 集中营]',                                 ico_path='数字.ico')    w.show()    sys.exit(app.exec_())

以上就是“怎么用PyQt5制作一个猜数字小游戏”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

--结束END--

本文标题: 怎么用PyQt5制作一个猜数字小游戏

本文链接: https://www.lsjlt.com/news/323680.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么用PyQt5制作一个猜数字小游戏
    今天小编给大家分享一下怎么用PyQt5制作一个猜数字小游戏的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。开始之前,直接来看一...
    99+
    2023-06-29
  • 基于PyQt5制作一个猜数字小游戏
    开始之前,直接来看一下实现后的效果。想自己实现或者需要源码的童鞋直接进场... 将PyQt5的相关模块直接导入即可。 from PyQt5.QtGui import * from ...
    99+
    2024-04-02
  • 利用java制作一个猜数字小游戏
    今天就跟大家聊聊有关利用java制作一个猜数字小游戏,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。具体方法如下:package com.swift;import java.util....
    99+
    2023-05-31
    java ava
  • 使用python怎么制作一个猜数字游戏
    本篇文章给大家分享的是有关使用python怎么制作一个猜数字游戏,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。python可以做什么Python是一种编程语言,内置了许多有效的...
    99+
    2023-06-14
  • 怎么用canvas制作一个猜字母的小游戏
    这篇文章主要讲解了“怎么用canvas制作一个猜字母的小游戏”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用canvas制作一个猜字母的小游戏”吧! ...
    99+
    2024-04-02
  • 使用C语言制作一个猜数字游戏
    本篇文章为大家展示了使用C语言制作一个猜数字游戏,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。C语言是什么C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发,使用C语言可以以简易的...
    99+
    2023-06-15
  • 基于JS制作一个网页版的猜数字小游戏
    目录一. 游戏简介二. 页面预览三. 页面实现四. 功能实现五. 参考源码 一. 游戏简介 在输入框内输一个数字,点击后面的“猜”按钮,系统会根据你...
    99+
    2024-04-02
  • Shell中怎么实现一个猜数字小游戏
    Shell中怎么实现一个猜数字小游戏,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。生成的密码和用户输入可以接受重复数字。所以相对一般规则的猜数字可能难度要大不少。本版本规则:A...
    99+
    2023-06-09
  • 怎么用HTML5的Canvas API制作一个简单猜字游戏
    本文小编为大家详细介绍“怎么用HTML5的Canvas API制作一个简单猜字游戏”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么用HTML5的Canvas API制作一个简单猜字游戏”文章能帮助大家解...
    99+
    2024-04-02
  • 如何基于Vue制作一个猜拳小游戏
    目录前言:项目效果展示:代码实现思路:实现代码:总结:前言: 在工作学习之余玩一会游戏既能带来快乐,还能缓解生活压力,跟随此文一起制作一个小游戏吧。 描述:石头剪子布,是一种猜拳游戏...
    99+
    2023-01-05
    vue 小游戏 vue猜拳小游戏 vue 小游戏动画
  • 使用Shell怎么实现一个猜数字游戏
    使用Shell怎么实现一个猜数字游戏?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。random(),函数,random函数返回一个0~num-1之间的随机数. random...
    99+
    2023-06-09
  • Python中怎么实现一个猜数小游戏
    Python中怎么实现一个猜数小游戏,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。实现效果: 程序截图:点击(此处)折叠或打开from random i...
    99+
    2023-06-04
  • C语言怎么猜数字小游戏
    这篇文章主要讲解了“C语言怎么猜数字小游戏”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言怎么猜数字小游戏”吧!清楚实现目标做任何一个小项目之前,我们首先都需要明确自己想要实现的目标.所...
    99+
    2023-06-17
  • 用js实现猜数字小游戏
    上周老师留的小作业,做一个猜数字的小游戏,个人感觉挺有意思的,就随便写了写,有些地方逻辑并不是很合理(学生小白勿喷)。主要内容是随机生成0-100的正整数,猜六次每次提示猜的大了还是...
    99+
    2024-04-02
  • 如何借助HTML5CanvasAPI制作一个简单的猜字游戏
    本篇文章为大家展示了如何借助HTML5CanvasAPI制作一个简单的猜字游戏,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。二话不说,先上效果图以及源代码~HTML...
    99+
    2024-04-02
  • 怎么用Python开发一个简单的猜数字游戏
    本篇文章给大家分享的是有关怎么用Python开发一个简单的猜数字游戏,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。如何使用Python制作一个简单的猜数字游戏。游戏规则玩家将猜...
    99+
    2023-06-16
  • 使用vbs怎么制作一个数字益智游戏
    今天就跟大家聊聊有关使用vbs怎么制作一个数字益智游戏,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 选择操作: 游戏开始时会提示选择注册, 登录, 退出三种选项,注册: 注册成功会...
    99+
    2023-06-08
  • 使用CocosCreator怎么制作一个微信小游戏
    使用CocosCreator怎么制作一个微信小游戏?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1、在微信公众平台下载微信开发者工具 地址: http...
    99+
    2023-06-14
  • 使用java编写一个猜字母游戏
    使用java编写一个猜字母游戏?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Java是什么Java是一门面向对象编程语言,可以编写桌面应用程序、Web应用程序、分布式系统和...
    99+
    2023-06-06
  • c语言怎么实现猜数字小游戏
    本篇内容介绍了“c语言怎么实现猜数字小游戏”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、前言      &...
    99+
    2023-06-30
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作