接受由python中的空格分隔的多个用户输入并将它们附加到列表中

时间:2012-07-10 00:04:43

标签: python list

如何接受以空格分隔的多个用户输入?我不知道输入的数量,但我确实知道它们都是整数。

以下是一些示例输入:

13213 412 8143
12 312
1321 142 9421 9 29 319 

我知道如果我事先知道输入的数量就可以做到这一点,但我在制作这种通用时遇到了麻烦。我可以要求用户输入他将输入的组数:

inputs = int(raw_input("Enter number of raw inputs "))
num = []
for i in xrange(1, inputs):
    num.append(raw_input('Enter the %s number: '))

但我正在寻找一种更优雅的解决方案,不需要向用户询问2个问题。

4 个答案:

答案 0 :(得分:25)

s = raw_input("Please enter your numbers: ")

mynums = [int(i) for i in s.split()]
# OR
mynums = map(int, s.split())

答案 1 :(得分:12)

试试这个:

nums = [int(i) for i in raw_input("Enter space separated inputs: ").split()]

答案 2 :(得分:0)

for python 2.x

x,y = map(int,raw_input()。split())

它采用由空格分隔的两个变量x和y的int类型,你可以用你想要的类型替换int

for python 3.x

x,y = input()。split()

它需要两个由空格分隔的字符串类型的变量x和y,你必须明确转换

答案 3 :(得分:0)

x,y=map(int,input().split())#这将以空格分隔输入并映射#into int