python中的2D数组使用列表列表

时间:2017-08-07 09:07:54

标签: python arrays python-3.x list

我正在尝试创建一个输入函数和一个输出2D数组。 经过一些研究(使用1D数组时)我发现python中没有像数组那样的东西。但是,我可以使用列表来实现我的目标。

以下代码使用list:

为1D数组工作
def array_input(num):
    for Index in range(0, num):
        ind = int(input("Please enter element {0} : ".format(Index)))
        array_list.append(ind)


def array_output():
    for Index in range(0, len(array_list)):
            print("Element {0} is {1} ".format(Index, array_list[int(Index)]))
    """print(array_list)"""


array_list = []
a = int(input("Please enter the length of the array"))
array_input(a)
array_output()

input("Pres any key to continue")

以下是我使用列表列表为2D数组编写的内容:输出正在工作,但输入不是。任何人都可以帮我弄清楚如何添加列表列表中的新元素(有点像2D矩阵)?

def array_input(row, column):

    print(array_list)
    for R in range(0, row):
        for C in range(0, column):
            ind = int(input("Please enter element ({0},{1}) : ".format(R, C)))
            array_list[R][C] = ind


def array_output(row, column):
    for R in range(0, row):
        for C in range(0, column):
            print("Element ({0},{1}) is {2} ".format(R, C, array_list[int(R)][int(C)]))
    print(array_list)


array_list = [[]]

a = int(input("Please enter the number of rows of the array"))
b = int(input("Please enter the number of columns of the array"))
array_input(a, b)
array_output(a, b)


input("Pres any key to continue")

2 个答案:

答案 0 :(得分:1)

def array_input(row, column):

    for R in range(0, row):
        for C in range(0, column):
            ind = int(input("Please enter element ({0},{1}) : ".format(R, C)))
            array_list[R][C] = ind
            print(ind)

def array_output(row, column):
    for R in range(0, row):
        for C in range(0, column):
            print("Element ({0},{1}) is {2} ".format(R, C, array_list[int(R)][int(C)]))
    print(array_list)


a, b = 2, 2;
array_list = [[0 for x in range(a)] for y in range(b)] 
array_input(2,2)
array_output(2,2)

这对你有用。您当然可以将ab的分配切换到用户输入。重要的部分是array_list变量的赋值。希望这能激发你的问题。

答案 1 :(得分:0)

这将使您可以最灵活地使用数组

def array_input(row, column):
    for R in range(0, row):
        for C in range(0, column):
            ind = int(input("Please enter element ({0},{1}) : ".format(R, C)))
            array_list[R][C] = ind
            print(ind)

def array_output(row, column):
    for R in range(0, row):
        for C in range(0, column):
            print("Element ({0},{1}) is {2} ".format(R, C, array_list[int(R)][int(C)]))
    print(array_list)

def create_array(row,column):
    array_list=[]
    for R in range(0,row):
        array_list.append([])
        for C in range(0,column):
            array_list[R].append(0)
    return array_list

a = int(input("Please enter the number of rows of the array "))
b = int(input("Please enter the number of columns of the array "))

array_list= create_array(a,b)
array_input(a,b)
array_output(a,b)

快乐的编码!