Ангел обнови решението на 11.03.2015 11:15 (преди над 9 години)
+def interpret_western_sign(day, month):
+ zodiac_signs = [(120,'capricorn'), (218,'aquarius'), (320,'pisces'), (420,'aries'), (521,'taurus'),
+ (621,'gemini'), (722,'cancer'), (823,'leo'), (923,'virgo'), (1023,'libra'),
+ (1122,'scorpio'), (1222,'sagittaurus'), (1231, 'capricorn')]
+
+ iterator = int(str(month) + '%02d' % day)
+
+ for date_zodiac in zodiac_signs:
+ if iterator < date_zodiac[0]:
+ return date_zodiac[1]
+
+def interpret_chinese_sign(year):
+ chinese_signs = ['rat','ox','tiger','rabbit','dragon','snake',
+ 'horse','sheep','monkey','rooster','dog','pig']
+
+ year_to_compare = (year - 1900) % 12
+ return chinese_signs[year_to_compare]
+
+def interpret_both_signs(day, month, year):
+ return (interpret_western_sign(day, month), interpret_chinese_sign(year))
- Трябва да слагаш по 2 празни реда между функциите
-
iterator
можеш да го намериш по доста по-хитър начин без да минаваш през стрингове :) -
year_to_compare
не ти е нужна в случая - pep8 казва, че редовете трябва да са под 80 символа