Как определить функции в Python?
В настоящее время я пишу программу на python, чтобы определить цены на боулинг, проверить, применимы ли специальные предложения, и вернуть стоимость на человека. Я должен определить три функции, используя операторы assignment и if / else.
Я написал код, однако он проваливает все тесты, через которые я его провожу. Может ли кто-нибудь просмотреть его и сказать мне, есть ли логическая ошибка? Я использовал визуализатор python, и он показывает, что он должен работать, однако это не так.
Что я уже пробовал:
def get_rate(start_hr, start_min, day, is_holiday): if (is_holiday ==True): if (start_hr <=18) and (start_min >=29): rate=4 return 4 else: rate=6 return 6 else: if (day <=4): if (start_hr <=18) and (start_min <30): rate= 3 return 3 else: rate=5 return 5 else: if (day == 5): if (start_hr <=18) and (start_min >=29): rate=3 return 3 else: rate=6 return 6 else: if (day >=6): if (start_hr <= 18) and (start_min >=29): rate=4 return 4 else: rate=6 return 6 def check_nite(start_hr, start_min, day): if (day <=5) and (start_hr>=21) and (start_min >=30): return True else: return False def get_fee(rate, num_games, num_people, day, is_nite, is_holiday): cost=(rate*num_games)*num_people if is_holiday== True: return ('Happy holidays! your total is $', cost, '.') else: if is_nite== True: if day <=4 rate=7 num_games=1 return ('nite special! your total is $', cost,'.') else: rate=14 num_games=1 return 14 else: if (day == 6) and (num_people>=4): rate=2 return ('thrifty sunday! your total is $', cost, '.') else: return ('your total is $', cost,'.')