Wenn ich mehrere identische Elemente zur Liste hinzuzufügen, muss ich list.extend verwenden:list.extend und Liste Verständnis
a = ['a', 'b', 'c']
a.extend(['d']*3)
Ergebnis
['a', 'b', 'c', 'd', 'd', 'd']
Aber, wie mit der Liste der ähnlich zu tun Verständnis?
a = [['a',2], ['b',2], ['c',1]]
[[x[0]]*x[1] for x in a]
Ergebnis
[['a', 'a'], ['b', 'b'], ['c']]
Aber ich brauche diese eine
['a', 'a', 'b', 'b', 'c']
Irgendwelche Ideen?
Dank! Es funktioniert, aber ich verstehe nicht einmal, wie ich diesen Ausdruck lesen soll. – Stas
'für x in a' extrahiert jedes der Elemente von' a' einzeln in 'x'. 'for y in ...' erstellt eine neue Liste aus 'x' und extrahiert ihre Elemente nacheinander in' y'. Es geschieht alles gleichzeitig (mehr oder weniger), wodurch alles auf derselben Verschachtelungsebene ist. –
Es ist in der Regel klarer mit dem Auspacken: [y für (Artikel, Zeiten) in einem für y in [Artikel] * mal] – tokland