如何将我的2d盒子变成2d阵列​​,我可以从每个索引中提取信息?

时间:2016-11-14 22:45:13

标签: python arrays python-3.x

关于如何在python中创建2d列表有很多问题。 我知道你可以初始化一个,但我不确定如何制作一个可以采用下面代码形式的列表。我的代码可以用来制作我想要的那种盒子,但我也希望能够询问用户是否要从该列表中获取,或者更改其中的值。

def main():
    width = int(input("Enter width :: "))
    height = int(input("Enter height :: "))
    char = "-"
    table = []
    for x in range(height):
        print('-'* width)
main()

那么我该如何制作它以便我有一个2d数组,我可以从中获取索引值,这看起来与此代码打印的完全一样? 预期输出在上面,但是以2d数组样式的形式。 实际输出只是我想要的打印字符串,而不是可修改的对象。

以下是代码外观的一般概念,如果你给出w为6和h为7,则会返回(再一次,这是正确的,但我希望它在一个数组中):

------
------
------
------
------
------
------

1 个答案:

答案 0 :(得分:0)

这就是你所需要的:

table = [[char]*width for _ in range(height)]

您可以这样打印:

for row in table:
    for c in row:
        print(c, end='')
    print()

您可以像这样编辑值:

table[row_index][column_index] = new_value