Ангел обнови решението на 09.03.2015 12:30 (преди над 9 години)
+def interpret_western_sign(day, month):
+ formated = 100 * month + day
+ ZODIAC = {121: 'Aquarius', 219: 'Pisces', 321: 'Aries', 421: 'Taurus',
+ 521: 'Gemini', 621: 'Cancer', 723: 'Leo', 823: 'Virgo',
+ 923: 'Libra', 1023: 'Scorpio', 1122: 'Sagittarius',
+ 1222: 'Capricorn'}
+ while formated not in ZODIAC:
+ if formated == 0:
+ return 'Capricorn'
+ formated -= 1
+ return ZODIAC[formated]
+
+
+def interpret_chinese_sign(year):
+ ChineseZodiac = {1: 'rooster', 2: 'dog', 3: 'pig', 4: 'rat', 5: 'ox',
+ 6: 'tiger', 7: 'rabbit', 8: 'dragon', 9: 'snake',
+ 10: 'horse', 11: 'sheep', 0: 'monkey', }
+ return ChineseZodiac[year % 12]
+
+
+def interpret_both_signs(day, month, year):
+ return (interpret_western_sign(day, month), interpret_chinese_sign(year))
- Имената на зодиите трябва да са изцяло с малки букви, така излиза, че не връщат правилните неща
- По-добре е да изнесеш константите извън функциите
-
ChineseZodiac
е кофти име, помисли си защо и го оправи
Конвенцията за константи в Питон е името на променливата да е с ГЛАВНИ_БУКВИ
(CHINISE_ZODIAC
) и те да са в началото на файла. Много рядко има смисъл константата да е част от дефиницията на функцията ти.
accidental comment