summaryrefslogtreecommitdiff
path: root/pypers/marelli/modulo4/multi_iter.py
blob: d3a5ac21bddc85b657ace317c2a6a50347fa56a3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
from ms.file_utils import ifiles
import os

def gen(fname):
    for line in file(fname):
        yield line

def multi_iter(iters):
    iters = list(iters) # to avoid side effects
    while iters:
        for it in iters:
            try:
                yield it.next()
            except StopIteration:
                iters.remove(it)

ci =multi_iter(gen(f) for f in
         ifiles("/home/micheles/md/python/Timing",
                lambda f: f.endswith(".txt")))

for line in ci:
    print line,