Python 3, 66 63 байт
Завдяки ідеям відповідей JavaScript / ES тут мені вдалося видавити кілька байт. Індексуйте словник - неіснуючі ключі піднімуть a KeyError
. Наступний код працює в локальному часовому поясі
import time;print({1:'Merry Christmas'}['c 25'in time.ctime()])
Формат виводу для ctime
не залежить від локалі - формат завжди ~ 'Sun Dec 25 19:23:05 2016'
. Оскільки лише в грудні закінчується 3-літерне абревіатурне закінчення c
, його тут безпечно використовувати 'c 25'in time.ctime()
.
Попередня версія:
Це працює в часовому поясі UTC. Для місцевого часового поясу потрібно s/gm/local
ще 3 байти. Для Python 2 можна видалити дужки з об'ємом print
65 байт.
import time;print({(12,25):'Merry Christmas'}[time.gmtime()[1:3]])
Конструкція містить KeyError
інші дати:
>>> import time;print({(1,1):'Happy New Year'}[time.gmtime()[1:3]])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: (12, 25)