Python 3, 66 63 bytes
Gracias a las ideas de las respuestas de JavaScript / ES aquí, logré exprimir algunos bytes. Indexar un diccionario: las claves inexistentes elevarán a KeyError
. El siguiente código funciona en la zona horaria local
import time;print({1:'Merry Christmas'}['c 25'in time.ctime()])
El formato de salida para ctime
no depende de la configuración regional: el formato siempre es ~ 'Sun Dec 25 19:23:05 2016'
. Dado que solo en diciembre termina la abreviatura de 3 letras c
, es seguro usarla 'c 25'in time.ctime()
aquí.
Versión previa:
Esto funciona en la zona horaria UTC. Para la zona horaria local, se necesitan s/gm/local
3 bytes más. Para Python 2, se pueden eliminar paréntesis de print
65 bytes.
import time;print({(12,25):'Merry Christmas'}[time.gmtime()[1:3]])
La construcción arroja KeyError
en otras fechas:
>>> 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)