Мария обнови решението на 04.03.2013 01:11 (преди над 11 години)
+horoscope = ("Овен", "Телец", "Близнаци",
+ "Рак", "Лъв", "Дева",
+ "Везни", "Скорпион", "Стрелец",
+ "Козирог", "Водолей", "Риби")
+
+def what_is_my_sign(day, month):
+ if month == 1:
+ if day <= 19:
+ return horoscope[9]
+ else: return horoscope[10]
+ elif month == 2:
+ if day <= 18:
+ return horoscope[10]
+ else: return horoscope[11]
+ elif month == 3:
+ if day <= 20:
+ return horoscope[11]
+ else: return horoscope[0]
+ elif month == 4:
+ if day <= 20:
+ return horoscope[0]
+ else: return horoscope[1]
+ elif month == 5:
+ if day <= 20:
+ return horoscope[1]
+ else: return horoscope[2]
+ elif month == 6:
+ if day <= 20:
+ return horoscope[2]
+ else: return horoscope[3]
+ elif month == 7:
+ if day <= 21:
+ return horoscope[3]
+ else: return horoscope[4]
+ elif month == 8:
+ if day <= 22:
+ return horoscope[4]
+ else: return horoscope[5]
+ elif month == 9:
+ if day <= 22:
+ return horoscope[5]
+ else: return horoscope[6]
+ elif month == 10:
+ if day <= 22:
+ return horoscope[6]
+ else: return horoscope[7]
+ elif month == 11:
+ if day <= 21:
+ return horoscope[7]
+ else: return horoscope[8]
+ else:
+ if day <= 21:
+ return horoscope[8]
+ else: return horoscope[9]
+
+
+
Ок, сетила си се да използваш списък, но въпреки това правиш ужасни повторения в кода. Виждам 12 еднакви блока код.
Пренасяй на следващ ред след else:
.