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

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

Към профила на Антоан Ангелов

Резултати

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

Код

def interpret_western_sign(day, month):
signs = [
('aquarius', 21),
('pisces', 19),
('aries', 21),
('taurus', 21),
('gemini', 21),
('cancer', 21),
('leo', 23),
('virgo', 23),
('libra', 23),
('scorpio', 23),
('sagittarius', 22),
('capricorn', 22)
]
(sign_name, sign_day) = signs[month - 1]
if sign_day <= day:
return sign_name
return signs[month - 2][0] if month > 1 else signs[-1][0]
def interpret_chinese_sign(year):
signs = [
'rat', 'ox', 'tiger', 'rabbit', 'dragon', 'snake',
'horse', 'sheep', 'monkey', 'rooster', 'dog', 'pig'
]
return signs[(year - 1900) % 12]
def interpret_both_signs(day, month, year):
return (interpret_western_sign(day, month),
interpret_chinese_sign(year))

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

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

OK

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

Антоан обнови решението на 06.03.2015 20:10 (преди над 9 години)

+def interpret_western_sign(day, month):
+ signs = [
+ ('aquarius', 21),
+ ('pisces', 19),
+ ('aries', 21),
+ ('taurus', 21),
+ ('gemini', 21),
+ ('cancer', 21),
+ ('leo', 23),
+ ('virgo', 23),
+ ('libra', 23),
+ ('scorpio', 23),
+ ('sagittarius', 22),
+ ('capricorn', 22)]
+
+ (signName, signDay) = signs[month - 1]
+
+ if signDay <= day:
+ return signName
+
+ return signs[month - 2][0] if month > 1 else signs[-1][0]
+
+
+def interpret_chinese_sign(year):
+ signs = ['rat', 'ox', 'tiger', 'rabbit', 'dragon', 'snake',
+ 'horse', 'sheep', 'monkey', 'rooster', 'dog', 'pig']
+
+ return signs[(year - 1900) % 12]
+
+
+def interpret_both_signs(day, month, year):
+ return (interpret_western_sign(day, month), interpret_chinese_sign(year))

Антоан обнови решението на 06.03.2015 22:26 (преди над 9 години)

def interpret_western_sign(day, month):
signs = [
('aquarius', 21),
('pisces', 19),
('aries', 21),
('taurus', 21),
('gemini', 21),
('cancer', 21),
('leo', 23),
('virgo', 23),
('libra', 23),
('scorpio', 23),
('sagittarius', 22),
- ('capricorn', 22)]
+ ('capricorn', 22)
+ ]
- (signName, signDay) = signs[month - 1]
+ (sign_name, sign_day) = signs[month - 1]
- if signDay <= day:
- return signName
+ if sign_day <= day:
+ return sign_name
return signs[month - 2][0] if month > 1 else signs[-1][0]
def interpret_chinese_sign(year):
- signs = ['rat', 'ox', 'tiger', 'rabbit', 'dragon', 'snake',
- 'horse', 'sheep', 'monkey', 'rooster', 'dog', 'pig']
+ signs = [
+ 'rat', 'ox', 'tiger', 'rabbit', 'dragon', 'snake',
+ 'horse', 'sheep', 'monkey', 'rooster', 'dog', 'pig'
+ ]
return signs[(year - 1900) % 12]
def interpret_both_signs(day, month, year):
- return (interpret_western_sign(day, month), interpret_chinese_sign(year))
+ return (interpret_western_sign(day, month),
+ interpret_chinese_sign(year))