python数字华容道算法_pyqt 简单实现3X3数字华容道
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file ‘num.ui’
#
# Created by: PyQt5 UI code generator 5.10.1
#
# WARNING! All changes made in this file will be lost!
from PyQt5.QtWidgetsimport *
from PyQt5import QtCore, QtGui, QtWidgets
import sys
import random
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName(“MainWindow”)
MainWindow.resize(800, 600)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.MainWindow = MainWindow
self.centralwidget.setObjectName(“centralwidget”)
self.gridLayoutWidget = QtWidgets.QWidget(self.centralwidget)
self.gridLayoutWidget.setGeometry(QtCore.QRect(310, 100, 131, 121))
self.gridLayoutWidget.setObjectName(“gridLayoutWidget”)
self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget)
self.gridLayout.setContentsMargins(0, 0, 0, 0)
self.gridLayout.setObjectName(“gridLayout”)
self.pushButton_4 = QtWidgets.QPushButton(self.gridLayoutWidget)
self.pushButton_4.setObjectName(“pushButton_4”)
self.gridLayout.addWidget(self.pushButton_4, 1, 0, 1, 1)
self.pushButton_3 = QtWidgets.QPushButton(self.gridLayoutWidget)
self.pushButton_3.setObjectName(“pushButton_3”)
self.gridLayout.addWidget(self.pushButton_3, 0, 2, 1, 1)
self.pushButton_2 = QtWidgets.QPushButton(self.gridLayoutWidget)
self.pushButton_2.setObjectName(“pushButton_2”)
self.gridLayout.addWidget(self.pushButton_2, 0, 1, 1, 1)
self.pushButton_5 = QtWidgets.QPushButton(self.gridLayoutWidget)
self.pushButton_5.setObjectName(“pushButton_5”)
self.gridLayout.addWidget(self.pushButton_5, 1, 1, 1, 1)
self.pushButton_6 = QtWidgets.QPushButton(self.gridLayoutWidget)
self.pushButton_6.setObjectName(“pushButton_6”)
self.gridLayout.addWidget(self.pushButton_6, 1, 2, 1, 1)
self.pushButton_1 = QtWidgets.QPushButton(self.gridLayoutWidget)
self.pushButton_1.setObjectName(“pushButton_1”)
self.gridLayout.addWidget(self.pushButton_1, 0, 0, 1, 1)
self.pushButton_7 = QtWidgets.QPushButton(self.gridLayoutWidget)
self.pushButton_7.setObjectName(“pushButton_7”)
self.gridLayout.addWidget(self.pushButton_7, 2, 0, 1, 1)
self.pushButton_8 = QtWidgets.QPushButton(self.gridLayoutWidget)
self.pushButton_8.setObjectName(“pushButton_8”)
self.gridLayout.addWidget(self.pushButton_8, 2, 1, 1, 1)
self.pushButton_9 = QtWidgets.QPushButton(self.gridLayoutWidget)
self.pushButton_9.setObjectName(“pushButton_9”)
self.gridLayout.addWidget(self.pushButton_9, 2, 2, 1, 1)
MainWindow.setCentralWidget(self.centralwidget)
self.statusbar = QtWidgets.QStatusBar(MainWindow)
self.statusbar.setObjectName(“statusbar”)
MainWindow.setStatusBar(self.statusbar)
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate(“MainWindow”, “MainWindow”))
self.pushButton_4.setText(_translate(“MainWindow”, “4”))
self.pushButton_3.setText(_translate(“MainWindow”, “3”))
self.pushButton_2.setText(_translate(“MainWindow”, “2”))
self.pushButton_5.setText(_translate(“MainWindow”, “5”))
self.pushButton_6.setText(_translate(“MainWindow”, “6”))
self.pushButton_1.setText(_translate(“MainWindow”, “1”))
self.pushButton_7.setText(_translate(“MainWindow”, “7”))
self.pushButton_8.setText(_translate(“MainWindow”, “8”))
self.pushButton_1.clicked.connect(self.button_click)
self.pushButton_2.clicked.connect(self.button_click)
self.pushButton_3.clicked.connect(self.button_click)
self.pushButton_4.clicked.connect(self.button_click)
self.pushButton_5.clicked.connect(self.button_click)
self.pushButton_6.clicked.connect(self.button_click)
self.pushButton_7.clicked.connect(self.button_click)
self.pushButton_8.clicked.connect(self.button_click)
self.pushButton_9.clicked.connect(self.button_click)
self.pushButtons = [self.pushButton_1,self.pushButton_2,self.pushButton_3,self.pushButton_4,self.pushButton_5,self.pushButton_6,self.pushButton_7,self.pushButton_8,self.pushButton_9]
## 先创个 list
num_list = [”, ‘1’, ‘2’, ‘3’,’4′,’5′,’6′,’7′,’8′]
num_list1 = (random.sample(num_list, 9))
for index,pushButtonin enumerate(self.pushButtons):
pushButton.setText(_translate(“MainWindow”,num_list1[index]))
def button_click(self):
sender =self.gridLayoutWidget.sender()
position = sender.objectName()
position_num =int(position.split(‘_’)[1])
try:
if self.pushButtons[position_num +1 -1].text() ==”:
self.pushButtons[position_num +1 -1].setText(sender.text())
sender.setText(”)
self.check()
return
except:
pass
try:
if self.pushButtons[position_num -3 -1].text() ==”:
if position_num -3 -1 <0:
return
self.pushButtons[position_num -3 -1].setText(sender.text())
sender.setText(”)
self.check()
return
except:
pass
try:
if self.pushButtons[position_num -1 -1].text() ==”:
if position_num -1 -1 <0:
return
self.pushButtons[position_num -1 -1].setText(sender.text())
sender.setText(”)
self.check()
return
except:
pass
try:
if self.pushButtons[position_num +3 -1].text() ==”:
self.pushButtons[position_num +3 -1].setText(sender.text())
sender.setText(”)
self.check()
return
except:
pass
def check(self):
for index,pushButtonin enumerate(self.pushButtons):
if index ==8:
QMessageBox.about(self.MainWindow, “提示”, “恭喜成功!”)
if pushButton.text() !=str(index+1):
return
if __name__ ==’__main__’:
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())
python数字华容道算法_pyqt 简单实现3X3数字华容道相关推荐
- python数字组合算法_python - 简单算法题 - 求三位数组合
求三位数组合 lst = [3, 6, 2, 7] 这四个数字能组成多少个互不相同且无重复数字的三位数?比如362算一个,326算一个,请逐个输出他们 思路分析 从4个数里面取3个数,且不重复,然后进 ...
- 【python】机器学习算法(KNN)入门——手写数字识别
前言 嗨喽~大家好呀,这里是魔王呐 ! 最近邻 (k Nearest Neighbors, KNN)算法是一种分类算法 1968年由Cover和Hart提出,应用场景有宁符识别.文本分类. 图像识别等 ...
- Python 基础 之 jupyter notebook 中机器学习的简单入门书写数字识别 demo 操作学习
Python 基础 之 jupyter notebook 中机器学习的简单入门书写数字识别 demo 操作学习 目录 Python 基础 之 jupyter notebook 中机器学习的简单入门书写 ...
- 基于深度学习的手写数字识别算法Python实现
摘 要 深度学习是传统机器学习下的一个分支,得益于近些年来计算机硬件计算能力质的飞跃,使得深度学习成为了当下热门之一.手写数字识别更是深度学习入门的经典案例,学习和理解其背后的原理对于深度学习的理解有 ...
- Python徒手实现识别手写数字—图像识别算法(K最近邻)
Python徒手实现识别手写数字-图像识别算法(K最近邻) 写在前面 这一段的内容可以说是最难的一部分之一了,因为是识别图像,所以涉及到的算法会相比之前的来说比较困难,所以我尽量会讲得清楚一点. 而且 ...
- python随机数字密码生成器_Python简单生成8位随机密码的方法
本文实例讲述了python简单生成8位随机密码的方法.分享给大家供大家参考,具体如下: #!/usr/bin/env python # -*- coding: utf-8 -*- import ran ...
- python游戏最简单代码-如何利用Python开发一个简单的猜数字游戏
前言 本文介绍如何使用Python制作一个简单的猜数字游戏. 游戏规则 玩家将猜测一个数字.如果猜测是正确的,玩家赢.如果不正确,程序会提示玩家所猜的数字与实际数字相比是"大(high)&q ...
- 数字华容道算法生有解
数字华容道NxN数字随机排列的阵列有解的充要条件是: N为奇数,总逆序数为偶数, N为偶数,总逆序数为奇数. --数字华容道算法2*2-10*10 --随机生成有解算法 --作者,韩永旗 --迷你号2 ...
- Python 手写机器学习最简单的 kNN 算法
https://www.toutiao.com/a6698919092876739079/ Python 手写机器学习最简单的 kNN 算法 苏克1900 Python爬虫与数据挖掘 本文 3000 ...
最新文章
- 科普:浅谈 Hellinger Distance
- 四大主流BI工具比较
- 图论 —— 网络流 —— 最小割 —— 平面图与对偶图
- maven的聚合和继承详解(2021版)
- 雷石柏云服务器指令,雷石KTV人工智能,让歌唱更自由
- 查看计算机当前用户的sid,查看SID
- 计算机的人文素养知识,勤阅读,拓视野——记计算机科学学院人文素养提升计划阅读能力提升专题讲座...
- 2010 27寸 imac 升级固态_2017 款 iMac,27 寸升级换 SSD 固态硬盘拆机详解
- Sidetree协议
- 万象:庸人容易因欠缺自知之明而自我膨胀
- 标注 画框 转写,亲亲,你做错了没?
- 2022.1.25复盘
- centos下查看服务器型号命令
- 你知道吗?除了迅雷,这几款下载神器也不错!
- 拉东(Radon)变换
- 【计算机网络】(一)走进网络
- 企业办理CMMI3级认证,需要做哪些工作?
- pwnable.kr wp leg
- java面向对象程序设计题库_java面向对象程序设计习题集.doc
- 通过XML转换下载.xlsx格式的excel文件