Добринка обнови решението на 03.03.2013 23:48 (преди над 11 години)
+def what_is_my_sign(day, month):
+ if day < 1 or month < 1 or month > 12:
+ return None
+
+ if (day >= 21 and day <= 31 and month == 3) or (day <= 20 and month == 4):
+ return "Овен"
+ elif (day >= 21 and day <= 30 and month == 4) or (day <= 20 and month == 5):
+ return "Телец"
+ elif (day >= 21 and day <= 31 and month == 5) or (day <= 20 and month == 6):
+ return "Близнаци"
+ elif (day >= 21 and day <= 30 and month == 6) or (day <= 21 and month == 7):
+ return "Рак"
+ elif (day >= 22 and day <= 31 and month == 7) or (day <= 22 and month == 8):
+ return "Лъв"
+ elif (day >= 23 and day <= 31 and month == 8) or (day <= 22 and month == 9):
+ return "Дева"
+ elif (day >= 23 and day <= 30 and month == 9) or (day <= 22 and month == 10):
+ return "Везни"
+ elif (day >= 23 and day <= 31 and month == 10) or (day <= 21 and month == 11):
+ return "Скорпион"
+ elif (day >= 22 and day <= 30 and month == 11) or (day <= 21 and month == 12):
+ return "Стрелец"
+ elif (day >= 22 and day <= 31 and month == 12) or (day <= 19 and month == 1):
+ return "Козирог"
+ elif (day >= 20 and day <= 31 and month == 1) or (day <= 18 and month == 2):
+ return "Водолей"
+ elif (day >= 19 and day <= 29 and month == 2) or (day <= 20 and month == 3):
+ return "Риби"
+ else:
+ return None
Помисли как да премахнеш това повторение в кода си с помощта на колекциите, за които ви говорихме.
Правиш проверка за невалиден input. Изрично ви казахме да не го правите.