从同一行获取动态数量的输入

时间:2014-08-18 17:12:47

标签: python

我们如何从同一行获取动态数量的输入?例如,如果N是我的输入数量,如果是N = 3,那么我如何接受3个不同的输入,所有输入都用空格分隔,并将它们存储到3个不同的变量中?

现在,我知道如何从同一行获取输入,前提是我事先知道N的值。如果我的输入数量为3,则使用以下代码执行此操作,并将它们分别分配给变量a,b和c:

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

但是,我似乎无法弄清楚如何使用此代码将动态数量的输入分配给相同数量的变量。

2 个答案:

答案 0 :(得分:5)

如何将项目存储在列表中并单独处理呢?

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

如果你已经死了,那就是&#34;独特的&#34;每个输入的字符串变量名称(即使您从数字列表索引中获得相同的行为,该索引比以下建议更健壮,更通用,更快速,更简单):

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

print named_lookup["c"]

答案 1 :(得分:0)

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