pyqt5猜数小程序

#-*- coding:utf-8 -*-
from PyQt5.QtWidgets import QApplication,QWidget,QTableWidgetItem
import sys
from form import Ui_Form
import random
import time
class mywindow(QWidget,Ui_Form):
    def __init__(self):
        super().__init__()
        self.setupUi(self)
        self.btnstart.clicked.connect(self.start)
        self.btnok.clicked.connect(self.ok)
        self.btn0.clicked.connect(self.btn_0)
        self.btn1.clicked.connect(self.btn_1)
        self.btn2.clicked.connect(self.btn_2)
        self.btn3.clicked.connect(self.btn_3)
        self.btn4.clicked.connect(self.btn_4)
        self.btn5.clicked.connect(self.btn_5)
        self.btn6.clicked.connect(self.btn_6)
        self.btn7.clicked.connect(self.btn_7)
        self.btn8.clicked.connect(self.btn_8)
        self.btn9.clicked.connect(self.btn_9)
        self.btnreset.clicked.connect(self.reset)

    def start(self):
        self.groupBox.setEnabled(True) #解除按钮群组禁用状态
        self.table.clearContents()
        self.label_2.setText(‘电脑自动生成0到100之间的随机数,请猜‘)
        self.x=random.randint(1,100)
        self.label.setText(‘‘)
        self.i=1        #计算步数
        self.timea=time.time()    #程序运行的起始时间

     #0-9各按钮的点击
    def btn_0(self):
        if self.label.text()==‘小了‘ or self.label.text()==‘大了‘:
            self.label.clear()
            self.i+=1
        textt=self.label.text()
        self.label.setText(textt+‘0‘)

    def btn_1(self):
        if self.label.text()==‘小了‘ or self.label.text()==‘大了‘:
            self.label.clear()
            self.i+=1
        textt=self.label.text()
        self.label.setText(textt+‘1‘)

    def btn_2(self):
        if self.label.text()==‘小了‘ or self.label.text()==‘大了‘:
            self.label.clear()
            self.i+=1
        textt=self.label.text()
        self.label.setText(textt+‘2‘)

    def btn_3(self):
        if self.label.text()==‘小了‘ or self.label.text()==‘大了‘:
            self.label.clear()
            self.i+=1
        textt=self.label.text()
        self.label.setText(textt+‘3‘)

    def btn_4(self):
        if self.label.text()==‘小了‘ or self.label.text()==‘大了‘:
            self.label.clear()
            self.i+=1
        textt=self.label.text()
        self.label.setText(textt+‘4‘)

    def btn_5(self):
        if self.label.text()==‘小了‘ or self.label.text()==‘大了‘:
            self.label.clear()
            self.i+=1
        textt=self.label.text()
        self.label.setText(textt+‘5‘)

    def btn_6(self):
        if self.label.text()==‘小了‘ or self.label.text()==‘大了‘:
            self.label.clear()
            self.i+=1
        textt=self.label.text()
        self.label.setText(textt+‘6‘)

    def btn_7(self):
        if self.label.text()==‘小了‘ or self.label.text()==‘大了‘:
            self.label.clear()
            self.i+=1
        textt=self.label.text()
        self.label.setText(textt+‘7‘)

    def btn_8(self):
        if self.label.text()==‘小了‘ or self.label.text()==‘大了‘:
            self.label.clear()
            self.i+=1
        textt=self.label.text()
        self.label.setText(textt+‘8‘)

    def btn_9(self):
        if self.label.text()==‘小了‘ or self.label.text()==‘大了‘:
            self.label.clear()
            self.i+=1
        textt=self.label.text()
        self.label.setText(textt+‘9‘)

    def ok(self):
        x_text=int(self.label.text())
        temp_x=QTableWidgetItem(self.label.text())   #表格内容必须先转换一下格式,才能插入表格
        self.table.setItem(self.i-1,0,temp_x)    #表格显示步数

        if x_text == self.x:
            self.label.setText(‘恭喜过关‘)
            self.table.setItem(self.i-1,1,QTableWidgetItem(self.label.text()))  #表格显示过关
            timeb=time.time()
            timex=int(timeb-self.timea)
            self.label_2.setText(‘你一共用了{}秒,用了{}步‘.format(timex, self.i))
        elif x_text<self.x:
            self.label.setText(‘小了‘)
            self.table.setItem(self.i-1,1,QTableWidgetItem(self.label.text()))  #表格显示小了
        else:
            self.label.setText(‘大了‘)
            self.table.setItem(self.i-1,1,QTableWidgetItem(self.label.text()))   #表格显示大了

    def reset(self):    #重置按钮
        text=self.label.text()
        self.label.setText(text[0:-1])  #原标签内容减去最后一个字母,再显示出来

if  __name__==‘__main__‘:
    app=QApplication(sys.argv)
    w=mywindow()
    w.show()
    app.exec()

原文地址:https://www.cnblogs.com/jmlovepython/p/8446907.html

时间: 2024-10-09 11:47:45

pyqt5猜数小程序的相关文章

【Python】猜数小程序

有点沙雕 temp=input("猜猜我心里想的是哪个数字?") guess=int (temp) if guess==8: print("你是我肚里的蛔虫么?") print("哼,猜中也没有奖励") else: print("哈哈,猜错了哦!是8") print("游戏结束,不玩了!") PS:代码缩进很重要! 升级版1.0 if嵌套 temp=input("猜猜我心里想的是哪个数字?&quo

猜数字小程序的实现

目录 猜数字小程序的实现 一.比较两个数的大小 二.猜数字(年龄)的小游戏 2.1 用一个条件语句实现猜数字的小程序 2.2 随机数字 2.3 限制猜测次数 猜数字小程序的实现 一.比较两个数的大小 实现代码: # 设计思路 # 1.输入第一个数字num1 # 2.输入第二个数字num2 # 3.判断两个数字的大小 # 4.输出判断结果 #设计代码 num1=float(input("请输入第一个数字:")) num2=float(input("请输入第二个数字:"

Python实践:猜数字小程序Collatz序列

猜数字 代码 ''' 猜数字小游戏,不断输入你所猜的数(1-100),程序会根据你的输入提醒你进行 适当调整所猜数的大小,直到最后猜出这个随机数 ''' guessNumber = random.randint(1,100) print("I'm thinking a number between 1 and 100.") while True: print('Take a guess.') guess = int(input()) if guess > guessNumber:

jsp-简单的猜数小游戏

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getS

Python猜数小游戏

[游戏规则]生成一个指定范围的随机数(如:1-100),然后玩家输入数值猜答案,屏幕会根据玩家输入的数字给出大小提示,一直到玩家猜出准确答案则游戏胜利并结束. import  random answer=random.randint(1,100) n=int(input("Please input num: ")) while n!=answer :       if n>answer:           n = int(input("Num is Big! Plea

猜年龄小程序

第一版,缺点只能猜一次. age_of_archerzon = 22 guess_age = int(input("guess age:")) if guess_age == age_of_archerzon: print("yes,you got it!") break elif guess_age > age_of_archerzon: print("think it smaller!") else: print("think

猜数小游戏

1 #include<iostream> 2 #include<stdlib.h> 3 using namespace std; 4 int count = 0; 5 bool judge (int num,int ynum){ 6 if(num == ynum){ 7 cout<<"You got it right in "<<count<<" guesses"<<endl; 8 return

【005】优化猜数游戏

[题目]改进猜数游戏程序,功能是: a.允许用户反复输入数,直至猜中程序选定的数. b.输入的数如果大于选定的数,则提示“太大了”:如果小于选定的数,则提示“太小了”: 如果等于选定的数,则输出“你赢了”并结束程序. [解答] #include<iostream> using namespace std; int main() { int a; cin>>a; while(a!=5) { if(a<5) cout<<"太小了"<<e

需求:有一个猜数字小游戏,请写一个程序实现在测试类中只能使用5次,超过5次提示:游戏试玩结束,请付费。

package cn.idcast4; import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.io.Reader;import java.io.Writer;import java.util.Properties; /* * 需求:有一个猜数字小游戏,请写一个程序实现在测试类中只能使用5次, *