最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于python3 pyQt5 QtDesignner實現(xiàn)窗口化猜數(shù)字游戲功能

 更新時間:2019年07月15日 09:06:56   作者:白居不易1101  
這篇文章主要介紹了基于python3 pyQt5 QtDesignner實現(xiàn)窗口化猜數(shù)字游戲功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

描述:使用QtDesignner設(shè)計界面,pyQt5+python3實現(xiàn)主體方法制作的猜數(shù)字游戲。

游戲規(guī)則:先選擇游戲等級:初級、中級、高級、魔鬼級,選擇完游戲等級后點擊“確定”,然后后臺會自動生成一個與游戲等級匹配的“神秘數(shù)字”,游戲玩家在文本框內(nèi)輸入數(shù)字,再點擊文本框旁邊的“確定”,即可比較玩家所猜數(shù)字是否就是“神秘數(shù)字”。

游戲界面:

 

源代碼:

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

 # -*- coding: utf-8 -*- 
 # Form implementation generated from reading ui file 'guessNumberGame.ui'
 #
 # Created by: PyQt5 UI code generator 5.11.3
 #
 # WARNING! All changes made in this file will be lost! 
 from PyQt5 import QtCore, QtGui, QtWidgets
 class Ui_Form(object):
   def setupUi(self, Form):
     Form.setObjectName("Form")
     Form.resize(555, 463)
     self.label = QtWidgets.QLabel(Form)
     self.label.setGeometry(QtCore.QRect(40, 90, 181, 31))
     self.label.setObjectName("label")
     self.comboBox = QtWidgets.QComboBox(Form)
     self.comboBox.setGeometry(QtCore.QRect(230, 30, 171, 31))
     self.comboBox.setObjectName("comboBox")
     self.comboBox.addItem("")
     self.comboBox.addItem("")
     self.comboBox.addItem("")
     self.comboBox.addItem("")
     self.pushButton_2 = QtWidgets.QPushButton(Form)
     self.pushButton_2.setGeometry(QtCore.QRect(420, 30, 91, 31))
     self.pushButton_2.setObjectName("pushButton_2")
     self.pushButton = QtWidgets.QPushButton(Form)
     self.pushButton.setGeometry(QtCore.QRect(420, 90, 91, 31))
     self.pushButton.setObjectName("pushButton")
     self.textBrowser = QtWidgets.QTextBrowser(Form)
     self.textBrowser.setGeometry(QtCore.QRect(40, 151, 471, 201))
     self.textBrowser.setObjectName("textBrowser")
     self.lineEdit = QtWidgets.QLineEdit(Form)
     self.lineEdit.setGeometry(QtCore.QRect(230, 90, 171, 31))
     self.lineEdit.setObjectName("lineEdit")
     self.label_3 = QtWidgets.QLabel(Form)
     self.label_3.setGeometry(QtCore.QRect(40, 30, 181, 31))
     self.label_3.setObjectName("label_3")
     self.pushButton_3 = QtWidgets.QPushButton(Form)
     self.pushButton_3.setGeometry(QtCore.QRect(220, 380, 111, 41))
     font = QtGui.QFont()
     font.setFamily("Agency FB")
     font.setPointSize(12)
     self.pushButton_3.setFont(font)
     self.pushButton_3.setObjectName("pushButton_3")
     self.retranslateUi(Form)
     QtCore.QMetaObject.connectSlotsByName(Form)
   def retranslateUi(self, Form):
     _translate = QtCore.QCoreApplication.translate
     Form.setWindowTitle(_translate("Form", "猜數(shù)字游戲"))
     self.label.setText(_translate("Form", "<html><head/><body><p><span style=\" font-size:14pt;\">請猜一個數(shù)字:</span></p></body></html>"))
     self.comboBox.setItemText(0, _translate("Form", "初級:數(shù)字小于20"))
     self.comboBox.setItemText(1, _translate("Form", "中級:數(shù)字小于30"))
     self.comboBox.setItemText(2, _translate("Form", "高級:數(shù)字小于50"))
     self.comboBox.setItemText(3, _translate("Form", "魔鬼級:數(shù)字小于100"))
     self.pushButton_2.setText(_translate("Form", "確定"))
     self.pushButton.setText(_translate("Form", "確定"))
     self.label_3.setText(_translate("Form", "<html><head/><body><p><span style=\" font-size:14pt;\">請選擇游戲難度:</span></p></body></html>"))
     self.pushButton_3.setText(_translate("Form", "再來一局"))

界面代碼

代碼2: runG uess.py (方法主體代碼)

 # -*- coding: utf-8 -*-
 import sys,random,time
 from PyQt5.QtWidgets import QApplication, QWidget, QMainWindow
 from guessNumberGame import Ui_Form 
 times=1 #聲明一個模塊內(nèi)的全局變量;用于記錄猜數(shù)字的次數(shù)
 rand=20#聲明一個模塊內(nèi)的全局變量;神秘數(shù)字的最大范圍
 allTimes=7#聲明一個模塊內(nèi)的全局變量;游戲最大次數(shù)
 class mwindow(QWidget, Ui_Form):
   def __init__(self): #初始化
     super(mwindow, self).__init__() #這是對繼承自父類的屬性進行初始化。而且是用父類的初始化方法來初始化繼承的屬性。
     self.setupUi(self)
   #定義一個方法:從下拉框選擇游戲難度
   def gameLevel(self):
     times=1
     global rand,allTimes
     level=self.comboBox.currentIndex()
     if level==0:
       rand=20
       allTimes=7
     if level==1:
       rand=30
       allTimes=10
     if level==2:
       rand=50
       allTimes = 15
     if level==3:
       rand=100
       allTimes = 20
   #定義一個方法:選擇游戲難度后生成一個隨機的神秘數(shù)字
   def getRandNum(self):
     global theNum,times
     times=1      #每次選擇游戲難度并點擊“確定”后,已猜數(shù)字次數(shù)都重新歸為1
     w.pushButton.setEnabled(True)  #設(shè)置pushButton可點擊(即選擇了游戲難度之后,pushButton才可點擊)
     theNum=random.randint(1,rand)
     self.textBrowser.append('開始游戲吧,你有%d次機會,數(shù)字范圍:1-%d' %(allTimes,rand))
     # self.textBrowser.append(str(theNum)) #直接顯示神秘數(shù)字,用于調(diào)試時使用
   #定義一個方法:點擊“確定”按鈕的事件,用于比較所猜數(shù)字和神秘數(shù)字
   def guess(self):
     global allTimes,times #使用全局變量times
     yourNum = int(self.lineEdit.text()) #從文本框獲取到輸入的數(shù)字,并轉(zhuǎn)化為int型
     if yourNum < theNum and times < allTimes:
       text = "你猜的數(shù)字%d小了!你還有%d次機會,再猜!" %(yourNum,allTimes-times)
       self.textBrowser.append(text)  #把提示信息寫入textBrowser
       times += 1
     elif yourNum > theNum and times <allTimes:
       text = "你猜的數(shù)字%d大了!你還有%d次機會,再猜!" %(yourNum,allTimes-times)
       self.textBrowser.append(text)
       times += 1
     elif yourNum == theNum and times <allTimes:
       text = '你猜對了,就是%d,你一共猜了%s次!' % (theNum,times)
       self.textBrowser.append(text)
     else:
       text = '%d次機會用完了你也沒猜對!神秘數(shù)字其實是:%d' %(allTimes,theNum)
       self.textBrowser.append(text)
   #定義一個方法:點擊“再來一局”時觸發(fā)的事件
   def reStart(self):
     self.textBrowser.clear() #清除textBrowser內(nèi)的內(nèi)容
     self.lineEdit.clear()   #清除lineEdit內(nèi)的內(nèi)容
     w.pushButton.setEnabled(False) #設(shè)置pushButton不可點擊(即在選擇游戲難度之前,pushButton不可點擊)
 if __name__ == '__main__':
   app = QApplication(sys.argv)
   w = mwindow()
   w.pushButton.setEnabled(False) #設(shè)置pushButton不可點擊(即在選擇游戲難度之前,pushButton不可點擊)
   w.pushButton.clicked.connect(w.guess)  #綁定guess方法
   w.pushButton_2.clicked.connect(w.getRandNum)
   w.comboBox.currentIndexChanged.connect(w.gameLevel)
   w.pushButton_3.clicked.connect(w.reStart)
   w.show()
   sys.exit(app.exec_()) #使程序一直循環(huán)運行直到主窗口被關(guān)閉終止進程(如果沒有這句話,程序運行時會一閃而

總結(jié)

以上所述是小編給大家介紹的基于python3 pyQt5 QtDesignner實現(xiàn)窗口化猜數(shù)字游戲功能 ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • 詳解四種Python中基本形態(tài)學(xué)濾波的實現(xiàn)

    詳解四種Python中基本形態(tài)學(xué)濾波的實現(xiàn)

    最基礎(chǔ)的形態(tài)學(xué)操作有四個,分別是腐蝕、膨脹、開計算和閉計算。這篇文章主要介紹了這四種形態(tài)學(xué)濾波的實現(xiàn),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-04-04
  • Pandas中迭代DataFrame行的方法總結(jié)

    Pandas中迭代DataFrame行的方法總結(jié)

    Python是進行數(shù)據(jù)分析的一種很好的語言,主要是因為以數(shù)據(jù)為中心的Python包的奇妙生態(tài)系統(tǒng),本文主要為大家介紹了如何在Pandas中迭代DataFrame中的行,有需要的可以參考下
    2023-09-09
  • pandas實戰(zhàn):分析三國志人物示例實現(xiàn)

    pandas實戰(zhàn):分析三國志人物示例實現(xiàn)

    這篇文章主要介紹了pandas實戰(zhàn):分析三國志人物示例實現(xiàn),本文章內(nèi)容詳細,具有很好的參考價值,希望對大家有所幫助,需要的朋友可以參考下
    2023-01-01
  • Python基礎(chǔ)練習(xí)之用戶登錄實現(xiàn)代碼分享

    Python基礎(chǔ)練習(xí)之用戶登錄實現(xiàn)代碼分享

    這篇文章主要介紹了Python基礎(chǔ)練習(xí)之用戶登錄實現(xiàn)代碼分享,還是比較不錯的,這里分享給大家,供需要的朋友參考。
    2017-11-11
  • 使用Python和Scribus創(chuàng)建一個RGB立方體的方法

    使用Python和Scribus創(chuàng)建一個RGB立方體的方法

    這篇文章主要介紹了使用Python和Scribus創(chuàng)建一個RGB立方體的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Python腳本實現(xiàn)集群檢測和管理功能

    Python腳本實現(xiàn)集群檢測和管理功能

    這篇文章主要介紹了Python腳本實現(xiàn)集群檢測和管理功能,本文講解了實現(xiàn)想法、開發(fā)工具選擇、經(jīng)驗分享、代碼示例等內(nèi)容,需要的朋友可以參考下
    2015-03-03
  • Django基礎(chǔ)知識 URL路由系統(tǒng)詳解

    Django基礎(chǔ)知識 URL路由系統(tǒng)詳解

    這篇文章主要介紹了Django基礎(chǔ)知識 URL路由系統(tǒng)詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07
  • pandas對dataFrame中某一個列的數(shù)據(jù)進行處理的方法

    pandas對dataFrame中某一個列的數(shù)據(jù)進行處理的方法

    這篇文章主要介紹了pandas對dataFrame中某一個列的數(shù)據(jù)進行處理的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • PyTorch 1.0 正式版已經(jīng)發(fā)布了

    PyTorch 1.0 正式版已經(jīng)發(fā)布了

    今天小編就為大家分享一篇關(guān)于PyTorch 1.0 正式版已經(jīng)發(fā)布了!小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • python?opencv實現(xiàn)目標(biāo)外接圖形

    python?opencv實現(xiàn)目標(biāo)外接圖形

    這篇文章主要為大家詳細介紹了python?opencv實現(xiàn)目標(biāo)外接圖形,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08

最新評論

英吉沙县| 北碚区| 蒙阴县| 涞源县| 启东市| 江都市| 陆川县| 邢台县| 儋州市| 昂仁县| 乌鲁木齐县| 柘城县| 林口县| 墨江| 扶余县| 南昌市| 客服| 普格县| 卢湾区| 哈巴河县| 马山县| 雅安市| 郧西县| 百色市| 大连市| 龙江县| 安泽县| 青田县| 娄底市| 陇南市| 如东县| 武山县| 通榆县| 岳西县| 那坡县| 抚州市| 乃东县| 克东县| 海门市| 盱眙县| 长乐市|