创建与另一个数组大小相同的二维数组,并在python中使用零进行初始化
我在python中有一个2D数组,如下所示:创建与另一个数组大小相同的二维数组,并在python中使用零进行初始化,python,arrays,Python,Arrays,我在python中有一个2D数组,如下所示: 2d_array_1 =[[0,1],[1,0]] 并希望创建第二个大小相同的数组,所有值都初始化为零 在python中,如果初始数组的大小可以变化,我该如何做呢?您可以通过len(list)获得列表的大小,并且可以使用给定的值val初始化长度n的列表,如下所示:list=[val]*n。将这两者结合在一起,您可以得到: first_array = [[0,1],[1,0]] second_array = [ [0] * len(first_arr
2d_array_1 =[[0,1],[1,0]]
并希望创建第二个大小相同的数组,所有值都初始化为零
在python中,如果初始数组的大小可以变化,我该如何做呢?您可以通过
len(list)
获得列表的大小,并且可以使用给定的值val
初始化长度n
的列表,如下所示:list=[val]*n
。将这两者结合在一起,您可以得到:
first_array = [[0,1],[1,0]]
second_array = [ [0] * len(first_array[0]) ] * len( first_array )
当然,假设
first\u array
是您期望的形式。您可以通过len(list)
获得列表的大小,并且可以使用给定的值val
初始化长度n
的列表,如下所示:list=[val]*n
。将这两者结合在一起,您可以得到:
first_array = [[0,1],[1,0]]
second_array = [ [0] * len(first_array[0]) ] * len( first_array )
当然,假设
第一个数组是您所期望的形式。我认为上面的答案应该是固定的
first_array = [[0,1],[1,0]]
second_array = [ [0] * len(first_array[0]) ] * len( first_array )
second_array[0][0] = 1
print(second_array) # [[1, 0], [1, 0]]
为了防止这种情况,您可以使用以下代码
second_array = [ [0 for _ in range(len(first_array[0]))] for _ in range(len( first_array )) ]
second_array[0][0] = 1
print(second_array) # [[1, 0], [0, 0]]
我认为上述答案应该是固定的
first_array = [[0,1],[1,0]]
second_array = [ [0] * len(first_array[0]) ] * len( first_array )
second_array[0][0] = 1
print(second_array) # [[1, 0], [1, 0]]
为了防止这种情况,您可以使用以下代码
second_array = [ [0 for _ in range(len(first_array[0]))] for _ in range(len( first_array )) ]
second_array[0][0] = 1
print(second_array) # [[1, 0], [0, 0]]
二维列表的读取可以使用嵌套列表理解。二维列表的读取可能重复可以使用嵌套列表理解。二维列表的读取可能重复