我想像这样在PowerShell中从键盘输入输入:1 2 3 4 但是如果我这样输入,它将显示以下内容:
Traceback (most recent call last):
File "iqtest.py", line 7, in <module>
l.append(int(raw_input()))
ValueError: invalid literal for int() with base 10: '1 2 3 4'
仅当我在每次输入后输入时才起作用,因此创建了4行而不是1行。我如何只将4个输入全部放在一行中?我的代码:
list=[]
l=list
for i in range(0,n):
l.append(int(raw_input()))
答案 0 :(得分:3)
答案 1 :(得分:0)
在这里,我正在读取多个以空格分隔的数字 所以我正在使用.split(''),它将返回数字列表,但类型为string。 下一步是使用列表推导将列表“ x”中的所有数字转换为int类型的值。
x=raw_input().split(' ')
x=[int(num) for num in x]
print x #python2
答案 2 :(得分:0)
您可以使用split
和list comprehension
`
nums = [int(n) for n in raw_input().split(' ')]