[英]How to elif/else correctly in Python?
我需要編寫一個名為 stop_light 的 function 來確定 stop_light 是否應該改變顏色,如果是,它應該改變成什么顏色。
我可以做,但我不能做這部分:
我該怎么做那部分?
這是我的代碼
def stop_light(color, seconds):
if color == "green" and seconds > 60:
print("yellow")
elif color == "yellow" and seconds > 5:
print("red")
elif color == "red" and seconds > 55:
print("green")
else:
return color
stop_light("yellow", 3)
在我看來,您似乎混淆了print
和return
的目的。 將所有print
function 調用更改為return
語句。
print
接受您遞交的任何內容,將其轉換為字符串表示形式,然后將其發送到屏幕。
return
結束 function,並將值發送回最開始稱為 function 的任何內容。
如果您使用 jupyter 或 repl,這些很容易混淆。 這兩個都會自動將一些項目打印到屏幕上。
這有效
def stop_light(color, seconds):
if color == "green" and seconds > 60:
print("yellow")
elif color == "yellow" and seconds > 5:
print("red")
elif color == "red" and seconds > 55:
print("green")
else:
print(color)
stop_light("yellow", 3)
或者
def stop_light(color, seconds):
if color == "green" and seconds > 60:
return "yellow"
elif color == "yellow" and seconds > 5:
return "red"
elif color == "red" and seconds > 55:
return "green"
else:
return color
print(stop_light("yellow", 3))
添加更多如下所示的elif
語句:
elif color == "green" and seconds < 60:
print("green")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.