簡體   English   中英

從同一行獲取動態輸入

[英]Taking dynamic number of inputs from the same line

我們如何從同一行獲取動態的輸入數量? 例如,如果N是我的輸入數量,並且如果N = 3 ,那么我如何才能接受3個不同的輸入(均用空格分隔)並將它們存儲到3個不同的變量中?

現在,只要我事先知道N的值,我就知道如何從同一行獲取輸入。 如果我的輸入數為3,則使用以下代碼執行此操作,並將它們分別分配給變量a,b和c:

a,b,c = map(int,raw_input().split())

但是,我似乎無法弄清楚如何使用此代碼將動態輸入數量分配給相等數量的變量。

例如將項目存儲在列表中並分別進行處理,該怎么辦?

list_of_input = map(int,raw_input().split())

print "you input:"
for i,input_val in enumerate(list_of_input):
    print "item %d: %d:" % (i, input_val)

    if input_val < 5:
        pass   # do something for certain items
    elif input_val > 10:
        pass   # do something else for other items
    else: 
        pass   # etc

並且如果您對每個輸入都擁有“唯一的”字符串變量名一無所知(即使您從數字列表索引中獲得了相同的行為,它比以下建議更健壯,更通用,更快速,更簡單):

var_names = "abcdefghijklmnopqrstuvwxyz"
named_lookup = dict(zip(var_names, list_of_input))

print named_lookup["c"]
l=[]
mat=[]
n=int(input(""))
for i in range(0,n):
    mat=[int(i) for i in input().split()]  
    l.append(mat)
print(l)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM