繁体   English   中英

如何在Python的多维列表中接受用户输入?

[英]How to accept user input in multi dimension list in Python?

我需要将用户输入放在python的多维列表中。 我是Python新手。 一些用户输入是

11001111
10001100
11000000

我需要把它们放在清单上

a[[1,1,0,0,1,1,1,1],[1,0,0,0,1,1,0,0],[1,1,0,0,0,0,0,0]]

我所做的。 而且它完全没用

for i in range(3):
    for b in range(7):
        a[i][b] = int(input())

您可以一次读取一行并处理各个字符:

for i in range(3):
    line = input()
    for b in range(7):
        a[i][b] = int(line[b])

或者您可以一次读取一个字符:

sys.stdin.read(1)

如果您接受用户每​​次输入21位数+输入,则尽管不是最佳方法,但您正在执行的操作看起来很像C代码。

但是,它并不是没有用的,它可以工作,前提是您正确地初始化了二维数组,例如:

a = [[0]*7 for _ in range(3)]

这将创建3个包含7个元素的列表。 您可以使用发布的确切循环来读取/写入它们。

如果要读取3行单位数,则只能使用双列表理解来做到这一点:

a = [[int(x) for x in input()] for _ in range(3) ]

尝试这样做:

a = []
for i in range(3):
    k = raw_input()
    a.append([int(j) for j in k])

print a

这也可以工作:

a = []
for x in range(3):
    a.append([int(let) for let in input('enter number:\n')])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM