0
我想完成類的任務,但我只是沒有得到這最後一塊。builtins.TypeError:'函數'和'int'的實例之間不支持'<='
我想要一個函數,當給定風速時,給出相關的警告信息,但訣竅是風速和警告信息和參數在2個先前定義的函數中。另外,教師希望我們在一行中調用這兩個函數。
首先,我創建的第一個2個功能:
def storm_category(speed):
if speed <= 129:
return (0)
if speed >= 130 and speed < 164:
return (1)
if 165 <= speed and speed < 189:
return (2)
if 190 <= speed and speed < 219:
return (3)
if 220 <= speed and speed < 259:
return (4)
if speed >= 260:
return (5)
def category_warning(category):
if category == 0:
return "Not a major threat"
if category == 1:
return "Very dangerous winds will produce some damage."
if category == 2:
return "Extremely dangerous winds will cause extensive damage."
if category == 3:
return "Devastating damage will occur."
if category == 4:
return "Catastropic damage will occur"
if category == 5:
return "Cataclysmic damage will occur."
但在過去的功能,我需要使用從兩個信息:
def warning(speed):
# Requirement: this function should be one line!
return storm_category(category_warning)
與上面的代碼雖然,每次我嘗試返回一個錯誤,說「builtins.TypeError:'< =''function'和'int'的實例之間不支持'。它說,錯誤是在這些線路上:
return storm_category(category_warning)
而且
if speed <= 129:
return (0)
我不知道如果我的語法錯誤或什麼。誰能幫我?
'storm_category(category_warning)' - 究竟發生了什麼? 'storm_category'應該是一個速度,而不是'category_warning'函數,'category_warning'應該是一個類別,比如你對'storm_category'的恰當調用所得到的結果。 – user2357112
貌似返回的'warning'應該是'return category_warning(storm_category(speed))' –