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

Python无循环/函数实现点餐系统(含酱料选择)问题求助

修正后的Python点餐程序

代码实现

# 显示餐品菜单
print("请选择餐品:")
print("1 - Steak(牛排)")
print("2 - Mussels(贻贝)")
print("3 - Scampi(炸虾球)")
print("4 - Quinoa(藜麦)")

# 获取用户餐品选择
meal_choice = input("输入对应数字:")

# 转换为整数并处理非数字输入
try:
    meal_num = int(meal_choice)
except ValueError:
    print("We do not serve this")
else:
    # 判断餐品选择是否合法
    if meal_num == 1:
        meal_name = "Steak(牛排)"
        # 显示牛排酱料选项
        print("\n请选择酱料:")
        print("1 - 黑胡椒酱")
        print("2 - 蘑菇酱")
        print("3 - 红酒酱")
        sauce_choice = input("输入对应数字:")
        
        try:
            sauce_num = int(sauce_choice)
            if sauce_num == 1:
                sauce_name = "黑胡椒酱"
            elif sauce_num == 2:
                sauce_name = "蘑菇酱"
            elif sauce_num == 3:
                sauce_name = "红酒酱"
            else:
                print("无效酱料选择,默认搭配黑胡椒酱")
                sauce_name = "黑胡椒酱"
        except ValueError:
            print("无效酱料选择,默认搭配黑胡椒酱")
            sauce_name = "黑胡椒酱"
        
        print(f"\n您的餐品:{meal_name} + {sauce_name}")
    
    elif meal_num == 2:
        meal_name = "Mussels(贻贝)"
        # 显示贻贝酱料选项
        print("\n请选择酱料:")
        print("1 - 柠檬黄油酱")
        print("2 - 番茄蒜蓉酱")
        print("3 - 白葡萄酒酱")
        sauce_choice = input("输入对应数字:")
        
        try:
            sauce_num = int(sauce_choice)
            if sauce_num == 1:
                sauce_name = "柠檬黄油酱"
            elif sauce_num == 2:
                sauce_name = "番茄蒜蓉酱"
            elif sauce_num == 3:
                sauce_name = "白葡萄酒酱"
            else:
                print("无效酱料选择,默认搭配柠檬黄油酱")
                sauce_name = "柠檬黄油酱"
        except ValueError:
            print("无效酱料选择,默认搭配柠檬黄油酱")
            sauce_name = "柠檬黄油酱"
        
        print(f"\n您的餐品:{meal_name} + {sauce_name}")
    
    elif meal_num == 3:
        meal_name = "Scampi(炸虾球)"
        # 显示炸虾球酱料选项
        print("\n请选择酱料:")
        print("1 - 塔塔酱")
        print("2 - 甜辣酱")
        print("3 - 蒜蓉蛋黄酱")
        sauce_choice = input("输入对应数字:")
        
        try:
            sauce_num = int(sauce_choice)
            if sauce_num == 1:
                sauce_name = "塔塔酱"
            elif sauce_num == 2:
                sauce_name = "甜辣酱"
            elif sauce_num == 3:
                sauce_name = "蒜蓉蛋黄酱"
            else:
                print("无效酱料选择,默认搭配塔塔酱")
                sauce_name = "塔塔酱"
        except ValueError:
            print("无效酱料选择,默认搭配塔塔酱")
            sauce_name = "塔塔酱"
        
        print(f"\n您的餐品:{meal_name} + {sauce_name}")
    
    elif meal_num == 4:
        meal_name = "Quinoa(藜麦)"
        print(f"\n您的餐品:{meal_name}")
    
    else:
        print("We do not serve this")

代码说明

  • 用try-except捕获用户输入非数字的情况,避免程序崩溃,同时输出指定提示
  • 每个餐品选择用独立的if-elif分支处理,完全符合禁止使用循环和函数的要求
  • 前3款餐品分支内嵌套酱料选择的判断逻辑,同样用try-except和if-elif处理非法输入,默认分配一款酱料
  • 非法餐品数字直接输出We do not serve this
  • 输出格式清晰,明确展示最终的餐品+酱料组合

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 20:15:39