询问用户python3的一系列输入

时间:2017-09-26 21:36:08

标签: python loops python-3.6

我正在进行python练习 编写读取整数输入序列并打印

的Python程序
The smallest and largest of the inputs.

到目前为止我的代码

def smallAndLarge():

    num1 = int(input("Enter a number: "))
    num2 = int(input("Enter a number: "))

    if num1 > num2:
        print(num1,"is the largest number, while",num2,"is the smallest number.")
    else:
        print(num2,"is the largest number, while",num1,"is the smallest number.")


smallAndLarge()

我正在使用def smallAndlarge():因为我的导师希望我们将来为所有程序使用def函数。

我的问题是如何在用户决定不再添加输入之前询问用户的多个输入。谢谢你的时间。

1 个答案:

答案 0 :(得分:1)

您可以在完成后让用户标记。 (live example

numbers = [];
in_num = None

while (in_num != ""):
    in_num = input("Please enter a number (leave blank to finish): ")
    try:
        numbers.append(int(in_num))
    except:
        if in_num != "":
            print(in_num + " is not a number. Try again.")

# Calculate largest and smallest here.

您可以为"停止"选择任何字符串,只要它与in_num的初始值不同。

顺便说一下,你应该添加逻辑来处理错误输入(即不是整数)以避免运行时异常。

在此特定示例中,您可能还想创建smallestlargest变量,并在每次输入后计算它们的值。对于一个小的计算并不重要,但是当你转向更大的项目时,你会想要保持代码的效率。