簡體   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