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