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

如何根据用户输入重复执行Python单位转换程序?

升(L)到立方厘米(cc/cm³)转换工具(带重复执行功能)

以下是嵌入重复执行逻辑的完整Python代码,完全符合你的需求:

while True:
    try:
        # 获取用户输入的升数
        liters = float(input("请输入要转换的升数(L): "))
        # 1升 = 1000立方厘米,执行转换计算
        cubic_cm = liters * 1000
        print(f"{liters} L = {cubic_cm} cc/cm³")
        
        # 询问是否继续执行程序
        while True:
            repeat_input = input("是否继续转换?(y/n): ").strip().lower()
            if repeat_input == 'y':
                break  # 回到主循环,重启转换流程
            elif repeat_input == 'n':
                print("感谢使用!")
                exit()  # 退出程序
            else:
                print("Invalid Input!")
    except ValueError:
        print("错误:请输入有效的数字!")
        
        # 异常发生后同样询问是否继续
        while True:
            repeat_input = input("是否继续转换?(y/n): ").strip().lower()
            if repeat_input == 'y':
                break
            elif repeat_input == 'n':
                print("感谢使用!")
                exit()
            else:
                print("Invalid Input!")

关键逻辑说明

  • 外层while True构建主循环,让程序可以重复执行直到用户主动退出
  • try块处理正常的输入转换流程:捕获用户输入的升数,完成单位转换并输出结果
  • except块捕获用户输入非数字的异常,输出错误提示
  • 在输出结果或错误提示后,通过内层循环处理用户的重复请求:
    • 输入y/Y时,跳出内层循环,回到主循环开头重启程序
    • 输入n/N时,打印感谢信息并终止程序
    • 输入其他内容时,提示无效输入并重新询问,直到得到有效选项

内容的提问来源于stack exchange,提问作者Hello World

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 11:57:17