2009/3/30 x-ip <[email protected]>:
> El lun, 30-03-2009 a las 11:52 -0300, Sebastian Dominguez escribió:
>> Luis escribió:
>> > [...] try:
>> > filtered = [{"aid" : album["aid"], "name" : album["name"]}
>> > for album in albums if album["aid"] == id][0]
>> >
>> >
>> Entiendo poco de python, pero no esta mal un corchete ahi? El primer
>> corchete se cierra luego del ultimo id y antes de los corchetes del
>> ultimo indice...
>>
> Esta bien seba, 'desarmando' la expresion resulta:
>
> (comienza la lista cohomprensiva)
> [
> {"aid" : album["aid"], "name" : album["name"]}
> for album in albums if album["aid"] == id] (cierra la lista)
>
> [0](devolver el primer elemento de la lista)
De todas formas me parece más entendible y mejor desarrollado hacer:
for album in albums:
if album["aid"] == id:
filtered = album
break
Así no armás toda una lista de los elementos filtrados para luego solo
tomar el primero y además le ahorrás a todo el mundo perder 15 minutos
tratando de entender porque una list complehension que genera una
lista cuando que en verdad necesita solo un elemento...
PD: Seguramente hay una función de itertools super simple que lo hace
solo, pero en este momento estoy medio vago...
--
Saludos
Santi
_______________________________________________
Lugro mailing list
[email protected]
http://www.lugro.org.ar/mailman/listinfo/lugro