我正在用Python编写一个数独解算器,我需要在其中创建函数。其中一个检查数独矩阵并返回其中包含重复数字的行数
def findRepeatsInColumn(matrix):
numRepeats = 0
for row in matrix:
safeChars=['[', ']', '/']
usedChars=[]
for char in str(row):
if char in usedChars and char not in safeChars:
numRepeats += 1
break
else:
usedChars.append(char)
return numRepeats
如果我将一个矩阵[[1, 1, 1], [2, 2, 2], [3, 3, 3]]
传递给它,它可以正常工作,并给我输出3,但是为了检查所有列是否有重复的数字,我需要将行转换为列,这意味着我需要如下内容:Input: [[1, 1, 1], [2, 2, 2], [3, 3, 3]]
Output: [[1, 2, 3], [1, 2, 3], [1, 2, 3]]
有没有想过没有NumPy我怎么做
如果您的输入是
numpy.array
,您可以使用转置:输出:
或者您可以使用:
一种简单的方法是利用
zip
和*
:假设您有一个名为
m
的矩阵相关问题 更多 >
编程相关推荐