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 можна видалити дужки з об'ємом print65 байт.
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)