# Listas por comprensión (list comprehensions) # Cuadrados de todos los multiplos de 5 menores que 100 print [x**2 for x in range(100) if x%5 == 0] print # Diccionario que contiene estos numeros, con sus raices como claves: print dict([ (x , x**2) for x in range(100) if x%5 == 0]) print # Anidamiento: cuadrados de todos los multiplos de 5 # menores que 100 centrados en cadenas de 6 caracteres, siempre y # cuando su longitud sea menor que 4: print [ str(y).center(6) for y in [x**2 for x in range(100) if x%5 == 0] if len(str(y)) < 4 ] print # Diccionario como el de antes pero con estos valores: print dict([ (z , str(y).center(6) ) for z,y in [(x , x**2) for x in range(100) if x%5 == 0] if len(str(y)) < 4 ]) print # MORALEJA: Cuidado con las list comprehensions, tienden a # restar legibilidad si se abusa de ellas