Python 如何输入二维数组

Python 如何输入二维数组,python,arrays,Python,Arrays,我正在尝试制作一个包含3行4列的二维数组。我是一个完全的初学者,我不确定我是否应该输入数学或numpy来做这件事。我试着在网上搜索,但是很混乱。 2d数组的名称是grid2,这是我想到的: grid2 = [] rows = 3 col = 4 for i in range(0,rows): for j in range(0,col): eleG = int(input("Add a number: ")) grid2.append(

我正在尝试制作一个包含3行4列的二维数组。我是一个完全的初学者,我不确定我是否应该输入数学或numpy来做这件事。我试着在网上搜索,但是很混乱。 2d数组的名称是grid2,这是我想到的:

grid2 = []
rows = 3
col = 4

for i in range(0,rows):
    for j in range(0,col):
        eleG = int(input("Add a number: "))
        grid2.append(eleG)

print(gird2)
但我得到了一个错误:

回溯(最近一次呼叫最后一次): 文件“C:/Users/PycharmProjects/Zadatak.py”,第25行,在 打印(网格2)
名称错误:未定义名称“gird2”

您将变量名称“grid2”拼写为“gird2”

就矩阵而言,一种简单的方法是声明一个零2D数组,然后将元素循环为:

grid2 = np.zeros((rows, col))
for i in range(rows):
    for j in range(col):
        grid2[i][j] = int(input("Add a number: ")

print(grid2)

你可以用或不用numpy

没有numpy:

matrix = []

for row in range(3):
    matrix.append([])
    for col in range(4):
        matrix[row].append(1)
对于numpy:

matrix = np.ones((3,4))
 

我刚刚用1填充了所有内容,但您可以将其更改为您需要的任何内容:)

您错放了网格。这表示“网格”而不是“网格”。我想就是这样。

您这样做的方式是将行*列记录附加到一维表中

试着这样做:

for i in range(0,rows): 
    grid2.append([]) #append empty list for every row
    for j in range(0,columns):
        grid2[i].append(int(input("Add a number: "))) #append new item to current row

的确,他做了,但他也做了一个一维数组,而不是二维数组。他们也做了一维数组,我认为这不是他们想要的。这种评论可以作为“评论”发布,而不是我认为的答案。我如何才能使数组在打印时看起来是二维的?这样每一行都被一行一行地打印出来