带有二维数组的Python-If语句
我正在尝试生成一个数独。我想用数组来做这个。这就是我创建数组的方式(忽略这些不是正确的数独数字的事实): 它确实很好用。问题在于带有二维数组的Python-If语句,python,arrays,if-statement,multidimensional-array,Python,Arrays,If Statement,Multidimensional Array,我正在尝试生成一个数独。我想用数组来做这个。这就是我创建数组的方式(忽略这些不是正确的数独数字的事实): 它确实很好用。问题在于if语句。如果我这样做: print(row_array[0][1]) 或: 要获得“99”,它确实工作得很好!但是如果我在这样的if语句中使用这个变量方法: if y not in row_array[1] and y not in row_array[0][r]: row_array[1].append(y) 我得到以下错误: TypeError:类型为
if
语句。如果我这样做:
print(row_array[0][1])
或:
要获得“99”,它确实工作得很好!但是如果我在这样的if语句中使用这个变量方法:
if y not in row_array[1] and y not in row_array[0][r]:
row_array[1].append(y)
我得到以下错误:
TypeError:类型为“int”的参数不可编辑
我让数独运行起来,但它需要很多代码,所以我想设置一个计数器,用it替换行和列。我知道你们可能已经有了一个更好的数独代码,但我想自学,让代码随着时间的推移变得更好、更短。我不是通过复制别人的想法或编码方式来学习编写真正优秀的代码。问题在于:
if y not in row_array[0][r]
中的
操作员检查左侧是否在序列中或右侧是否可编辑。但是type(row\u array[0][r])
将返回int
,这不是一个可数。您好!你能详细说明一下如果追加调用成功,你希望行数组看起来如何吗?你说的y不在行数组[0][r]
是指1到99之间吗?这是因为行数组[0][r]
不再是一个子列表,而是一个scalarTypo:如果y不在->如果y不在谢谢。但是我该怎么解决这个问题呢?如果y==行数组[0][r]
,则使用。
if y not in row_array[1] and y not in row_array[0][r]:
row_array[1].append(y)
if y not in row_array[0][r]