我需要撰寫一個名為 stop_light 的函式來確定 stop_light 是否應該改變顏色,如果是,它應該改變成什么顏色。
- Stoplight 函式應采用兩個引數。第一個的值將是“綠色”、“黃色”或“紅色”。這表示停車燈的當前顏色。
- 第二個引數告訴函式此顏色已顯示多長時間。如果綠色的顯示時間超過 60 秒,則回傳“黃色”。如果黃色顯示時間超過 5 秒,則回傳“紅色”。如果紅色顯示時間超過 55 秒,則回傳“綠色”。
- 如果顏色顯示的時間不夠長(例如綠色顯示了 17 秒),則回傳當前顏色。以下是一些使用不同引數呼叫函式的示例。
我可以做,但我不能做這部分:
- 如果顏色顯示的時間不夠長(例如綠色已經顯示了 17 秒),則回傳當前顏色。”
我該如何做那部分?
這是我的代碼
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)
uj5u.com熱心網友回復:
在我看來,您似乎混淆了print和的目的return。將所有print函式呼叫更改為return陳述句。
print 接受你手上的任何東西,把它轉換成它的字串表示,然后把它發送到螢屏上。
return 結束函式,并將值發送回首先呼叫該函式的任何物件。
如果您使用 jupyter 或 repl,這些很容易混淆。這兩者都會自動將一些專案列印到螢屏上。
uj5u.com熱心網友回復:
這有效
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))
uj5u.com熱心網友回復:
添加更多如下所示的elif陳述句:
elif color == "green" and seconds < 60:
print("green")
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/316372.html
上一篇:回傳請求被修改后繞過
下一篇:以角度上傳影像檔案
