You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python 3编程求助:实现输入整数的最大最小值统计功能

Python程序:计算输入整数的最大值和最小值(处理异常输入)

没问题,我帮你完善这个Python程序,完全贴合你的需求,下面是详细的实现和说明:

需求回顾

  • 循环提示用户输入整数,直到用户输入done时终止循环
  • 输入done后,输出所有有效输入数字的最大值和最小值
  • 若用户输入非有效数字(比如字母、符号),用try/except捕获异常,输出Invalid input并忽略该输入
  • 测试输入:7、2、bob、10、4,预期输出:

    Invalid input
    Maximum is 10
    Minimum is 2

完善后的代码

largest = None
smallest = None
while True:
    num = input("Enter a number: ")
    if num == "done":
        break
    # 尝试将输入转换为整数,捕获非数字输入的异常
    try:
        number = int(num)
    except ValueError:
        print("Invalid input")
        continue  # 跳过当前输入的后续处理,回到循环开头
    # 更新最大值:首次输入有效数字直接赋值,之后比较更新
    if largest is None or number > largest:
        largest = number
    # 更新最小值:逻辑和最大值一致
    if smallest is None or number < smallest:
        smallest = number

# 输出最终结果
print(f"Maximum is {largest}")
print(f"Minimum is {smallest}")

关键修改说明

  • 异常处理:新增try/except块,当输入无法转换为整数时触发ValueError,打印提示后用continue跳过当前循环的剩余步骤,确保无效输入不会影响后续逻辑
  • 最值更新逻辑:
    • 初始时largest和smallest设为None,第一次输入有效数字时直接赋值
    • 后续每次输入有效数字,都会和当前的最值比较,更新为更大/更小的值
  • 输出格式优化:使用f-string让输出内容更清晰,完全匹配预期的输出表述

测试验证

按照测试输入依次输入:7、2、bob、10、4,最后输入done,程序会输出:

Invalid input
Maximum is 10
Minimum is 2

完全符合预期结果。

内容的提问来源于stack exchange,提问作者Haider Ali

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:19:55