[Python] Problemino curioso

Ivan Giuliani giuliani.v a gmail.com
Gio 18 Giu 2009 21:01:29 CEST


2009/6/18 Marco Beri <marcoberi a gmail.com>:
> Oggi ho dovuto risolvere questo problemino: data una lista di stringhe,
> prendere la prima di queste. La lista puo` essere potenzialmente vuota e in
> questo caso prendere la stringa vuota.
> Quindi, in python, data la lista l, una possibile soluzione su una linea
> puo` essere:
>     "" if len(l) == 0 else l[0]
> Si tratta di 27 caratteri.
> Siccome quando ci si intrippa di Progetto Eulero il cervello si deforma, ho
> provato a pensare ad un costrutto, magari meno pulito, che pero` occupasse
> meno caratteri.
> E ho pensato a questa schifezza da 18 caratteri:
>     (l[:1] or [""])[0]
> Siccome non mi faceva abbastanza schifo ho trovato questa da 17:
>     [l or [""]][0][0]
>
> Ma io dico che si puo` fare molto meglio.
> Vediamo chi ci arriva per primo :-)
>
> Ciao.
> Marco.

l[:1] or ""? Sono 11 caratteri :-)


Maggiori informazioni sulla lista Python