Python 3, 66 63 byte
Berkat ide-ide dari JavaScript / jawaban ES di sini saya berhasil memeras beberapa byte. Buat indeks kamus - kunci yang tidak ada akan memunculkan a KeyError
. Kode berikut berfungsi di zona waktu lokal
import time;print({1:'Merry Christmas'}['c 25'in time.ctime()])
Format output untuk ctime
tidak bergantung pada lokal - formatnya selalu ~ 'Sun Dec 25 19:23:05 2016'
. Karena hanya pada bulan Desember berakhirnya singkatan 3 huruf c
, aman untuk digunakan di 'c 25'in time.ctime()
sini.
Versi sebelumnya:
Ini bekerja di zona waktu UTC. Untuk zona waktu lokal kita perlu s/gm/local
3 byte lagi. Untuk Python 2, seseorang dapat menghapus tanda kurung dari print
65 byte.
import time;print({(12,25):'Merry Christmas'}[time.gmtime()[1:3]])
Konstruk ini memuat KeyError
tanggal lain:
>>> 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)