2015-10-13 16 views
8

Ich habe eine Liste innerhalb einer Liste in Python, und ich möchte, dass sie in einer einzigen Liste konvertieren Liste Verständnis mit:Verschachtelte Liste Verständnis in Python

>>> aa = [[1,2],[1,2]] 
>>> bb = [num for num in numbers for numbers in aa] 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
NameError: name 'numbers' is not defined 
>>> 

Was mache ich falsch?

* Die Antwort auf meine Frage ist nicht auf das Duplikat wie oben angegeben, es ist unter dieser Frage.

+6

'für Zahlen in aa' Teil zuerst kommen sollte. –

+1

Haha. woah! das war schnell. Vielen Dank! @AshwiniChaudhary – essramos

+0

Mögliches Duplikat von [Nested For Loops mit List Comprehension] (http://stackoverflow.com/questions/3633140/nested-for-loops-using-list-comprehension) – khajvah

Antwort

8

Sie haben die for Schleifen in Ihrer Liste Verständnis in umgekehrter Reihenfolge -

bb = [num for numbers in aa for num in numbers] 

Demo -

>>> aa = [[1,2],[1,2]] 
>>> bb = [num for numbers in aa for num in numbers] 
>>> bb 
[1, 2, 1, 2] 
+0

ja, ja. Vielen Dank. Das war verwirrend. Ich dachte, ich hätte es in der richtigen Reihenfolge. :) – essramos

Verwandte Themen