Решение на Хороскоп от Христина Христова

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

Към профила на Христина Христова

Резултати

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

Код

horoscope = [(20, 'Водолей'),
(19, 'Риби'),
(21, 'Овен'),
(21, 'Телец'),
(21, 'Близнаци'),
(21, 'Рак'),
(22, 'Лъв'),
(23, 'Дева'),
(23, 'Везни'),
(23, 'Скорпион'),
(22, 'Стрелец'),
(22, 'Козирог')]
def what_is_my_sign (day, month):
if horoscope[month-1][0] <= day:
return horoscope[month-1][1]
else:
return horoscope[month-2][1]

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

...............
----------------------------------------------------------------------
Ran 15 tests in 0.001s

OK

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

Христина обнови решението на 03.03.2013 00:02 (преди над 11 години)

+jan = (20, 'Водолей')
+feb = (19, 'Риби')
+mar = (21, 'Овен')
+apr = (21, 'Телец')
+may = (21, 'Близнаци')
+jun = (21, 'Рак')
+jul = (22, 'Лъв')
+aug = (23, 'Дева')
+sep = (23, 'Везни')
+oct = (23, 'Скорпион')
+nov = (22, 'Стрелец')
+dec = (22, 'Козирог')
+
+horoscope = [jan, feb, mar, apr, may, jun,
+ jul, aug, sep, oct, nov, dec]
+
+def what_is_my_sign (day, month):
+ if horoscope[month-1][0] <= day:
+ return horoscope[month-1][1]
+ else:
+ return horoscope[month-2][1]

Харесва ми че си изнесла константите извън функцията, защото не е нужно те да се декларират при всяко нейно извикване.

Възможно е обаче да ги комбинираш логически в един речник за да избегнеш толкова много глобални имена. Може би забелязваш например че oct е оцветено в синьо. Това е защото съществува стандартна питонска функция със същото име, която би била неизползваема в този модул.

Христина обнови решението на 04.03.2013 00:22 (преди над 11 години)

-jan = (20, 'Водолей')
-feb = (19, 'Риби')
-mar = (21, 'Овен')
-apr = (21, 'Телец')
-may = (21, 'Близнаци')
-jun = (21, 'Рак')
-jul = (22, 'Лъв')
-aug = (23, 'Дева')
-sep = (23, 'Везни')
-oct = (23, 'Скорпион')
-nov = (22, 'Стрелец')
-dec = (22, 'Козирог')
-
-horoscope = [jan, feb, mar, apr, may, jun,
- jul, aug, sep, oct, nov, dec]
+horoscope = [(20, 'Водолей'),
+ (19, 'Риби'),
+ (21, 'Овен'),
+ (21, 'Телец'),
+ (21, 'Близнаци'),
+ (21, 'Рак'),
+ (22, 'Лъв'),
+ (23, 'Дева'),
+ (23, 'Везни'),
+ (23, 'Скорпион'),
+ (22, 'Стрелец'),
+ (22, 'Козирог')]
def what_is_my_sign (day, month):
if horoscope[month-1][0] <= day:
return horoscope[month-1][1]
else:
return horoscope[month-2][1]