Ich bins schon wieder.
Frage zu Listen:
Code: Alles auswählen
L=[0,1,2,4]
L1=[0,2]
L2=[1,4]
Danke für eure Hilfe!

Lg
Johannes
Code: Alles auswählen
L=[0,1,2,4]
L1=[0,2]
L2=[1,4]
Code: Alles auswählen
>>> l = [0,1,2,3,4]
>>> lg = l[::2]
>>> lu = l[1::2]
>>> lg
[0, 2, 4]
>>> lu
[1, 3]
Hi Johannes!keboo hat geschrieben:Ich will quasi, dass die Werte mit den geraden Indexen in die erste Liste kommen und die ungeraden in die zweite.
Code: Alles auswählen
L = [0,1,2,4]
# Entweder so
L1 = []
for item in L[::2]:
L1.append(item)
L2 = []
for item in L[1::2]:
L2.append(item)
# oder so
L1 = [ item for item in L[::2] ]
L2 = [ item for item in L[1::2] ]
# oder so
L1 = L[::2]
L2 = L[1::2]
Code: Alles auswählen
L = [0,1,2,4]
L1 = []
for i in range(0, len(L), 2):
L1.append(L[i])
L2 = []
for i in range(1, len(L), 2):
L2.append(L[i])
Code: Alles auswählen
>>> l = range(20)
>>> gerade = []
>>> ungerade = []
>>> for pos, item in enumerate(l):
... if pos % 2 == 0:
... gerade.append(item)
... else:
... ungerade.append(item)
...
>>> gerade
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
>>> ungerade
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
Code: Alles auswählen
L=['0 60', '20 39', '30 58', '50 97', '80 146']
Code: Alles auswählen
L1=[0,20,30,50,80]
L2=[60,39,58,97,146]
Ich würd es so machen:keboo hat geschrieben:Hallo Nochmals!
Bin gerade darauf gekommen, dass ich gestern meine Frage falsch formuliert hatte.
So sieht meine Liste aus:
Mein Ziel ist es die Inhalte in 2 neue Listen aufzuspalten:Code: Alles auswählen
L=['0 60', '20 39', '30 58', '50 97', '80 146']
Ziel:Danke für eure Hilfe,Code: Alles auswählen
L1=[0,20,30,50,80] L2=[60,39,58,97,146]
Johannes
Code: Alles auswählen
>>> L=['0 60', '20 39', '30 58', '50 97', '80 146']
>>>
>>> L1=[]
>>> L2=[]
>>> for i in L:
... t = i.split()
... L1.append (int (t[0]))
... L2.append (int (t[1]))
Code: Alles auswählen
>>> L=['0 60', '20 39', '30 58', '50 97', '80 146']
>>>
>>> L1 = [int (i.split()[0]) for i in L]
>>> L2 = [int (i.split()[1]) for i in L]
>>>
>>> L1
[0, 20, 30, 50, 80]
>>> L2
[60, 39, 58, 97, 146]
Code: Alles auswählen
l = ['0 60', '20 39', '30 58', '50 97', '80 146']
l1, l2 = zip(*[x.split() for x in l])
Code: Alles auswählen
l1 = [int(x) for x in l1]
l2 = [int(x) for x in l2]