编程习题求助:明日穿搭推荐程序编写及代码调试问题
穿搭推荐程序修正方案
原代码的问题点
- 基础穿搭语句仅在温度>20℃时输出,不符合所有场景必显的要求
- 独立
if条件会导致高温度触发多个低温区间的推荐(比如21℃会同时触发>10、>5的判断,输出多余内容) - 缺少≤5℃时的额外保暖推荐(厚外套、手套)
修正后的代码
print("What is the weather forecast for tomorrow?") temperature = int(input("Temperature: ")) rain = input("Will it rain (yes/no): ") # 所有天气场景下的基础穿搭 print("Wear jeans and a T-shirt") # 按温度区间分层给出附加推荐 if 10 < temperature <= 20: print("I recommend a jumper as well") elif 5 < temperature <= 10: print("I recommend a jumper as well") print("Take a jacket with you") elif temperature <= 5: print("I recommend a jumper as well") print("Take a jacket with you") print("Make it a warm coat, actually") print("I think gloves are in order") # 降雨提示,兼容大小写输入 if rain.lower() == "yes": print("Don't forget your umbrella!")
关键修正说明
- 基础穿搭强制输出:将基础穿搭语句移至所有条件判断外,确保任何温度下都会显示。
- 区间化条件判断:使用
elif和明确的温度区间(如10 < temperature <=20),避免高温度触发低区间的推荐逻辑。 - 补充低温逻辑:新增≤5℃时的厚外套、手套推荐,完全匹配预期输出场景。
- 输入鲁棒性优化:用
rain.lower()处理输入的大小写差异,用户输入"Yes"/"YES"也能正确识别降雨状态。
内容的提问来源于stack exchange,提问作者Fiorent.dev
相关产品推荐
相关产品推荐

