Considere el siguiente código:estilo de estilo Lisp `let` sintaxis en Python lista por comprensión
>>> colprint([
(name, versions[name][0].summary or '')
for name in sorted(versions.keys())
])
Lo que este código no es imprimir los elementos de la diccionario versions
en orden ascendente de su keys
, pero desde el value
es otra lista ordenada, solo se imprime el resumen de su primer elemento (el 'máximo').
Desde que estoy familiarizado con let
de Lisp, Reescribí lo anterior como:
>>> colprint([
(name, package.summary or '')
for name in sorted(versions.keys())
for package in [versions[name][0]]
)]
¿Cree que esto viola being Pythonic? ¿Se puede mejorar?
Nota: Para los curiosos, colprint
se define here.
Heh. Intentar ser lispy es _todos_ antiponético. Python intenta no listarse tan fuerte como puede. – Svante
Es difícil hablar Parsel con un ceceo; [. – Tordek
python no intenta ser como lisp. GvR mismo ha dicho que PYthon y Lisp son muy similares, y que las diferencias son más superficiales. Yo mismo vengo de un esquema, pero he estado usando Python casi exclusivamente durante tres años, y me gusta la segunda vía más que la primera. – Broseph