[英]Iterate 2D numpy array using for and while loops
接受整数用户输入
创建一个具有多个行和列的1的numpy数组
创建一个一维数组,该数组使用range函数,该函数的元素数等于数组的大小。
依次将2D数组的每个元素与1D数组的元素相乘。
打印最终数组。
我尝试使用for和while循环对矩阵的不同位置进行迭代。
size = int(input("Enter the matrix size:"))
one_matrix = np.ones((size, size), dtype=int)
y = np.size(one_matrix)
range_matrix = np.arange(1, y + 1)
i = 0
for i in range(size):
j = 0
while j > 2:
one_matrix[i][j] = range_matrix[i + j]
j += 1
i += 1
全1代替1,2,3,.... 9
while条件永远不会满足,因为
j = 0
在那之后
当j> 2时
您可以考虑以下解决方案:
size = int(input("Enter the matrix size:")) one_matrix = np.ones((size, size), dtype=int) y = np.size(one_matrix) range_matrix = np.arange(1, y + 1) for i in range(y): r = i // size c = i % size one_matrix[r][c] = range_matrix[i]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.