Debug_刷题答案 Partial Accept 疑惑

楼主: depatg1998 (可可可)   2023-10-16 21:02:09
想请教各位大神,卡两天的Partial Accept 实在看不出哪里错了......
用测资输入和输出都和题目给的提示相同
Description
凯凯是一个讨厌麻烦的人,他总是早上吃早餐看气象预报时才决定出门要带什么,请依照
不同的天气状况提醒他出门要带的物品吧。
天气预报会包含以下资讯:
1. 气温:包含当天摄氏气温的最高温及最低温。
2. 降雨机率:当天的降雨机率,若小于等于 20% 视为晴天,大于等于 70% 视为雨天,
否则视为阴天。
3. 紫外线指数:当天的紫外线指数,0-2 为低量级,3-5 为中量级,6-7 为高量级,8-1
0 为过量级,11+ 为危险级。
根据气象预报的结果,凯凯会考虑携带以下物品:
1. 若为雨天则携带“雨伞”。
2. 不论晴天、阴天、或雨天,若紫外线指数达高量级或更高量级,则携带“雨伞”。
3. 若为阴天且最低温小于等于 20 度则携带“棒球帽”,若平均温度(即最高温和最低
温相加平均)小于等于 18 度,则携带“毛帽”。若携带毛帽则不带棒球帽,只会带一个
帽子出门。
4. 若紫外线指数达中量级或更高量级且为晴天,则携带“太阳眼镜”。
请根据凯凯订下的条件,以及当天气象预报的内容,提醒他该带出门的物品。
Input
输入有三行。
第一行为两个整数 H, L,数字间以空格分开,代表当天气温的最高温及最低温,保证 H
>= L。
第二行为一个 0-100 间的整数,代表该天的降雨机率。
第三行为一非负整数,代表当天的紫外线指数。
Output
输出有一行,代表需要携带的物品。
请依照“雨伞”、帽子(“棒球帽”或“毛帽”)、“太阳眼镜”顺序输出,物品间以空
格分开。
若没有需要带出门的物品,则输出“空手出门”
测资1:
Input
30 20
90
10
Output
雨伞
测资2:
Input
34 21
20
10
Output
雨伞 太阳眼镜
以下为code
H_L = input().split(' ')
H_L_int = [int(i) for i in H_L]
# print(H_L_int)
rain_rate = int(input())
# print(rain_rate)
UV_rate = int(input())
# print(UV_rate)
bring = []
weather = ''
if rain_rate >= 70:
bring.append('雨伞')
weather = '雨天'
elif rain_rate <= 20:
weather = '晴天'
else:
weather = '阴天'
if UV_rate >= 6:
if '雨伞' not in bring:
bring.append('雨伞')
if H_L_int[1] <= 20 and weather == '阴天':
if '棒球帽' not in bring and '毛帽' not in bring:
bring.append('棒球帽')
elif (H_L_int[0]+H_L_int[1])/2 <=18:
if '棒球帽' not in bring and '毛帽' not in bring:
bring.append('毛帽')
if UV_rate >= 3 and weather == '晴天':
bring.append('太阳眼镜')
if not bring:
result = '空手出门'
print(result)
else:
result = ' '.join(bring)
print(result)
谢谢各位
作者: lycantrope (阿宽)   2023-10-16 21:38:00
帽子写错
楼主: depatg1998 (可可可)   2023-10-16 22:37:00
想问大大 帽子是哪里写错 看脱窗都看不出来
作者: venomsoul (不怕太太)   2023-10-17 00:56:00
文意来说,毛帽的判断其实应该优先?
作者: aalexx (aalexx.S)   2023-10-17 02:35:00
程式码不要直接这样贴,不好阅读
作者: alasa15 (alasa)   2023-10-17 13:29:00
用pythontutor帮忙找
楼主: depatg1998 (可可可)   2023-10-17 19:26:00
超级感谢!!!没错就是顺序问题!再次感谢感谢感谢

Links booklink

Contact Us: admin [ a t ] ucptt.com