如何在输入负整数时将输入作为列表终止? (蟒蛇)

时间:2014-06-04 11:00:22

标签: python list input

输入负整数时如何终止列表中的输入?

我尝试了以下方法来读取输入,但是当输入负整数时,我想不出让它终止的方法。

    a = [ int(n) for n in (raw_input("Enter input- ")).split() ]

该问题要求从用户读取(超过7个)整数并将最大值与最小值交换,第二个最大值与第二个最小值交换,第三个最大值与第三个最小值交换。

有没有办法替换列表或字符串中的多个项目?

1 个答案:

答案 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)