Listenwerte aneinanderfügen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Hahne
User
Beiträge: 2
Registriert: Donnerstag 27. September 2007, 08:59

Hallo zusammen,

ich bin hier total versumpft und komm nicht weiter.
Einzelne Listeneinträge sollen in einer schleife so "verknüpft" werden, dass aus

l1 = [1,2,3]
l2 = [4,5,6]

folgendes wird:

[[1, 4], [1, 5], [1, 6], [2, 4], [2, 5], [2, 6], [3, 4], [3, 5], [3, 6]]

Ich steh den ganzen abend schon auf dem schlauch - kann mir jemand auf die sprünge helfen?

Im Endeffekt müsste man nur das folgende in eine schleife umsetzen - aber ich peils einfach nicht:

Code: Alles auswählen

l1 = [1,2,3]
l2 = [4,5,6]
l = []
for i in xrange(9):
    l.append([])
    
l[0].append(l1[0])
l[0].append(l2[0])

l[1].append(l1[0])
l[1].append(l2[1])

l[2].append(l1[0])
l[2].append(l2[2])

l[3].append(l1[1])
l[3].append(l2[0])

l[4].append(l1[1])
l[4].append(l2[1])

l[5].append(l1[1])
l[5].append(l2[2])

l[6].append(l1[2])
l[6].append(l2[0])

l[7].append(l1[2])
l[7].append(l2[1])

l[8].append(l1[2])
l[8].append(l2[2])

print l
Schönen Gruß,
Hahne[/code]
problembär

Code: Alles auswählen

#!/usr/bin/env python
#-*- coding: iso-8859-1 -*-

l3 = []

l1 = [1,2,3]
l2 = [4,5,6]

for i in l1:
    for u in l2:
        l3.append([i, u])

print l3
Noch Fragen :cool: ?

Gruß
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Code: Alles auswählen

In [1]: l1 = [1, 2, 3]

In [2]: l2 = [4, 5, 6]

In [3]: [(x, y) for x in l1 for y in l2]
Out[3]: [(1, 4), (1, 5), (1, 6), (2, 4), (2, 5), (2, 6), (3, 4), (3, 5), (3, 6)]
Benutzeravatar
HWK
User
Beiträge: 1295
Registriert: Mittwoch 7. Juni 2006, 20:44

Code: Alles auswählen

IDLE 2.6.1      
>>> from itertools import product
>>> list(product([1, 2, 3], [4, 5, 6]))
[(1, 4), (1, 5), (1, 6), (2, 4), (2, 5), (2, 6), (3, 4), (3, 5), (3, 6)]
MfG
HWK
Hahne
User
Beiträge: 2
Registriert: Donnerstag 27. September 2007, 08:59

Servus!

Vielen Dank für die Antworten - funktioniert einwandfrei!

Gruß,
Hahne
Antworten