Решение на Астрологични забави от Теодора Костова

Обратно към всички решения

Към профила на Теодора Костова

Резултати

  • 10 точки от тестове
  • 0 бонус точки
  • 10 точки общо
  • 6 успешни тест(а)
  • 0 неуспешни тест(а)

Код

western = [("capricorn", 20), ("aquarius", 18),
("pisces", 20), ("aries", 20), ("taurus", 20),
("gemini", 20), ("cancer", 22), ("leo", 22),
("virgo", 22), ("libra", 22), ("scorpio", 21), ("sagittarius", 21)]
chinese = [(1900, "rat"), (1901, "ox"), (1902, "tiger"), (1903, "rabbit"),
(1904, "dragon"), (1905, "snake"), (1906, "horse"), (1907, "sheep"),
(1908, "monkey"), (1909, "rooster"), (1910, "dog"), (1911, "pig")]
def interpret_western_sign(day=3, month=4):
boundary = western[month - 1][1]
index = month
if day <= boundary:
index = month - 1
return western[index % 12][0]
def interpret_chinese_sign(year):
for sign in chinese:
if (year - sign[0]) % 12 == 0:
return sign[1]
def interpret_both_signs(day, month, year):
return (interpret_western_sign(day, month), interpret_chinese_sign(year))

Лог от изпълнението

......
----------------------------------------------------------------------
Ran 6 tests in 0.006s

OK

История (1 версия и 1 коментар)

Теодора обнови решението на 10.03.2015 23:46 (преди над 9 години)

+western = [("capricorn", 20), ("aquarius", 18),
+ ("pisces", 20), ("aries", 20), ("taurus", 20),
+ ("gemini", 20), ("cancer", 22), ("leo", 22),
+ ("virgo", 22), ("libra", 22), ("scorpio", 21), ("sagittarius", 21)]
+
+chinese = [(1900, "rat"), (1901, "ox"), (1902, "tiger"), (1903, "rabbit"),
+ (1904, "dragon"), (1905, "snake"), (1906, "horse"), (1907, "sheep"),
+ (1908, "monkey"), (1909, "rooster"), (1910, "dog"), (1911, "pig")]
+
+
+def interpret_western_sign(day=3, month=4):
+ boundary = western[month - 1][1]
+ index = month
+ if day <= boundary:
+ index = month - 1
+ return western[index % 12][0]
+
+
+def interpret_chinese_sign(year):
+ for sign in chinese:
+ if (year - sign[0]) % 12 == 0:
+ return sign[1]
+
+
+def interpret_both_signs(day, month, year):
+ return (interpret_western_sign(day, month), interpret_chinese_sign(year))