Tim Chase wrote:
>>     i have a file :
>>          file 1:
>> 1
>> 2
>> 3
>> 4
>> 5
>> 6
>>
>> file2:
>> a
>> b
>> c
>> d
>> e
>> f
>> how do i make the two files into  list like this =
>> [1,a,2,b,3,c,4,d,5,e,6,f]
> 
>   from itertools import cycle
>   def serialize(*sources):
>     while True:
>       for source in sources:
>         yield source.next()
>   def stripper(iterator):
>     for thing in iterator:
>       yield thing.strip()
>   for thing in serialize(
>       stripper(file('file1.txt')),
>       stripper(file('file2.txt'))
>       ):
>     print thing
> 
> As a previous responder noted, there are a number of ways to
> treat the edge cases when the lengths of the files don't match.
> Since you left the condition underqualified, I chose to let it
> expire when the first one gave out rather than try and deal with
> the complications of such ambiguity.
> 
> -tkc
> 

Or maybe just :

>>> r = []
>>> for a, b in map(None
                , (int(i.strip('\n')) for i in open('file1.txt'))
                , (i.strip('\n') for i in open('file2.txt'))) :
        r.append(a)
        r.append(b)

>>> r
[1, 'a', 2, 'b', 3, 'c', 4, 'd', 5, 'e', None, 'f']



-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to