Петър обнови решението на 08.03.2015 12:43 (преди над 9 години)
+
+CHINESE_SIGNS_MAP = { 0: "monkey", 1: "rooster", 2: "dog", 3: "pig", 4: "rat", 5: "ox",
+ 6: "tiger", 7: "rabbit", 8: "dragon", 9: "snake", 10: "horse", 11: "sheep" }
+
+RANGES = [ 0,
+ [(1, 20, "capricorn"), (21, 31, "aquarius")],
+ [(1, 18, "aquarius"), (19, 29, "pisces")],
+ [(1, 20, "pisces"), (21, 31, "aries")],
+ [(1, 20, "aries"), (21, 30, "taurus")],
+ [(1, 20, "taurus"), (21, 31, "gemini")],
+ [(1, 20, "gemini"), (21, 30, "cancer")],
+ [(1, 22, "cancer"), (23, 31, "leo")],
+ [(1, 22, "leo"), (23, 31, "virgo")],
+ [(1, 22, "virgo"), (23, 30, "libra")],
+ [(1, 22, "libra"), (23, 31, "scorpio")],
+ [(1, 21, "scorpio"), (22, 30, "sagittarius")],
+ [(1, 21, "sagittarius"), (22, 31, "capricorn")]
+ ]
+
+def interpret_western_sign(day, month):
+ ranges = RANGES[month]
+ for date in ranges:
+ if day >= date[0] and day <= date[1]:
+ return date[2]
+
+def interpret_chinese_sign(year):
+ return CHINESE_SIGNS_MAP[year%12]
+
+def interpret_both_signs(day, month, year):
+ return (interpret_western_sign(day, month), CHINESE_SIGNS_MAP[year%12])
Речника с ключове последователни естествени числа започващи от нила приличат притеснително много на друг тип структура, която е имплементирана в езика.
- имаш ред над 79 символа дължина, а не трябва
- недей оставя интервал след
{
и[
в началото на речник / списък - отделяй глобално дефинираните функции с 2 празни реда