Aquí es Otra forma de hacerlo usando map() y funciones lambda:
>>> map(lambda d: d['value'], l)
donde l es la lista. Veo de esta manera "más sexy", pero lo haría usando la lista de comprensión.
Actualización: En caso de que el 'valor' puede faltar como un uso clave:
>>> map(lambda d: d.get('value', 'default value'), l)
Actualización: Yo tampoco soy un gran fan de lambdas, prefiero nombrar las cosas ... esto es la forma en que lo haría con esto en mente:
>>> import operator
>>> map(operator.itemgetter('value'), l)
incluso iría más allá y crear una única función que dice explícitamente lo que quiero lograr:
>>> import operator, functools
>>> get_values = functools.partial(map, operator.itemgetter('value'))
>>> get_values(l)
... [<list of values>]
1) ¿Qué has probado? Por favor incluya su código. 2) "lo mejor" es una palabra sin sentido en este contexto: lo mejor podría significar la más rápida, la menos memoria o la mayor parte del uso de productos con licencia de Oracle. No sabemos a qué te refieres con "mejor". Y no podemos comentar sobre el código que no publicaste. –
Tal vez solo quería preguntar cuál es la forma "pitónica" de hacerlo –
Mr @ S.Lott, hay tantas preguntas sobre SO que no tiene código, pero tiene respuestas, respuestas maravillosas, si no lo quiere 't para publicar una respuesta porque x o y, simplemente ignora esta publicación y eso es todo. : v Hace muchos años. –