Supongamos que tengo una función como esta:concatenación de muchas listas en Python
def getNeighbors(vertex)
que devuelve una lista de vértices que son vecinos del vértice dado. Ahora quiero crear una lista con todos los vecinos de los vecinos. Lo hago así:
listOfNeighborsNeighbors = []
for neighborVertex in getNeighbors(vertex):
listOfNeighborsNeighbors.append(getNeighbors(neighborsVertex))
¿Hay una manera más pitónica de hacer eso?
+1 Iba a sugerir una lista de comprensión. En mi humilde opinión, es la forma más pitónica. –
Sin embargo, consulte las comparaciones de tiempo, como comentarios bajo la respuesta de emu: tanto "itertools.chain" como "reduce (iadd" son más del doble de rápido que la comprensión de la lista anidada, y MUCHO más rápido que sum(), que se degrada rápidamente con # elementos procesados. – ToolmakerSteve