stehe gerade auf dem Schlauch...
Wie kann ich aus folgendem:
Code: Alles auswählen
>>> a = ["a" for x in range(5)]
>>> b = ["b" for x in range(5)]
>>> a
['a', 'a', 'a', 'a', 'a']
>>> b
['b', 'b', 'b', 'b', 'b']
['a','b','a','b']
Danke!
Code: Alles auswählen
>>> a = ["a" for x in range(5)]
>>> b = ["b" for x in range(5)]
>>> a
['a', 'a', 'a', 'a', 'a']
>>> b
['b', 'b', 'b', 'b', 'b']
Code: Alles auswählen
>>> a = ['a' for x in range(5)]
>>> b = ['b' for x in range(5)]
>>> c = []
>>> for pair in map(None,a,b):
... c.extend(list(pair))
...
>>> c
['a', 'b', 'a', 'b', 'a', 'b', 'a', 'b', 'a', 'b']
Code: Alles auswählen
In [1]: from itertools import izip
In [2]: def flatzip(a, b):
...: for item in izip(a, b):
...: yield item[0]
...: yield item[1]
...:
In [3]: a = list("a"*5)
In [4]: b = list("b"*5)
In [5]: list(flatzip(a, b))
Out[5]: ['a', 'b', 'a', 'b', 'a', 'b', 'a', 'b', 'a', 'b']
Oder mit beliebig vielen:Darii hat geschrieben:Oder so:Code: Alles auswählen
from itertools import izip def flatzip(a, b): for item in izip(a, b): yield item[0] yield item[1] a = list("a"*5) b = list("b"*5) print list(flatzip(a, b))
Code: Alles auswählen
from itertools import izip
def flatzip(*args):
for item in izip(*args):
for i in item:
yield i
Code: Alles auswählen
>>> a, b, c = ['a']*5, ['b']*5, []
>>> for pair in zip(a,b): c.extend(list(pair))
...
>>> c
['a', 'b', 'a', 'b', 'a', 'b', 'a', 'b', 'a', 'b']
Code: Alles auswählen
>>> a = ["a"]*5
>>> b = ["b"]*5
>>> list(reduce(tuple.__add__, zip(a, b)))
['a', 'b', 'a', 'b', 'a', 'b', 'a', 'b', 'a', 'b']
Code: Alles auswählen
c = list()
for i in range(0, len(a)):
c.append(a[i])
c.append(b[i])
>>> c
['a', 'b', 'a', 'b', 'a', 'b', 'a', 'b', 'a', 'b']
Code: Alles auswählen
>>> a = ['a']*5
>>> b = ['b']*5
>>> c = []
>>> for i in xrange(len(a)):
c += a[i]
c += b[i]
>>> c
['a', 'b', 'a', 'b', 'a', 'b', 'a', 'b', 'a', 'b']
Code: Alles auswählen
c = ['a','b']*5
>>> c
['a', 'b', 'a', 'b', 'a', 'b', 'a', 'b', 'a', 'b']