Python 识别某验消消乐验证码

某验的消消乐验证码识别就很简单了,在一个九宫格里,找出相邻的两个元素交换后,保证有一行或者一列的元素相同,如下图:
在这里插入图片描述
如果这一个九宫格是一张图片的话,我们将其分割成9个部分,然后每一格都将其标注为一个类别就行,或者直接从源码中拿到9张图片,最终的话,是转成一个二维矩阵进行识别,经过上图,我们转化的二维矩阵为

matrix = [[0, 1, 2], [3, 2, 1], [2, 0, 1]]

接下来,只需要用python写一个交换的算法识别就行

def find_same(matrix):
    # 判断矩阵一行或者一列的元素是否相同
    for i in range(len(matrix)):
        if len(set(matrix[i])) == 1:
            return True
    for j in range(len(matrix[0])):
        if len(set([matrix[i][j] for i in range(len(matrix))])) == 1:
            return True



    return False


def swape(matrix, i, j, m, n):
    # 交换矩阵中两个元素的位置
    matrix[i][j], matrix[m][n] = matrix[m][n], matrix[i][j]
    return matrix


def for_swape(matrix):
    # 循环整个矩阵,交换相邻的两个元素,判断矩阵中的一行或者一列是否有相同的

猜你喜欢

转载自blog.csdn.net/qq_36551453/article/details/131614907