输入负整数时如何终止列表中的输入?
我尝试了以下方法来读取输入,但是当输入负整数时,我想不出让它终止的方法。
a = [ int(n) for n in (raw_input("Enter input- ")).split() ]
该问题要求从用户读取(超过7个)整数并将最大值与最小值交换,第二个最大值与第二个最小值交换,第三个最大值与第三个最小值交换。
有没有办法替换列表或字符串中的多个项目?
答案 0 :(得分:2)
list comprehension
不适合这项工作。你应该写一个像这样的循环
a = []
while True:
n = int(raw_input("Enter input- "))
if n < 0:
break
a.append(n)
如果所有值都在一行中给出:
a = []
nums = raw_input("Enter input- ")
for n in nums.split():
n = int(n)
if n < 0:
break
a.append(n)