2014-09-12 2 views
0
에 번호를 추가
def multi(): 
    jobs = [] 
    r = open('raw.txt', 'r', 16777216).read().split('\n') 
    for i in r: 
     p = mp.Process(target=all, args=(i,)) 
     jobs.append(p) 
     p.start() 

raw.txt의 각 행은 내가 (분할 데이터 및 결과

조각으로 raw.txt가) 분할로) (멀티 수정하는 방법을 설명해주십시오 URL

입니다

감사합니다 결국, 10 개 라인마다)을 말하고, 각 청크 가공 라인

b) 반환 번호) (모두 적용/청크

+0

지정한 수의 청크로 줄을 반환하려면 생성기를 사용합니다. 그렇게하면 다른 요구 사항은 사소한 것입니다. –

답변

0

itertools 패키지를 보시면 유용한 것들이 많이 있습니다.

>>> with open('input.txt', 'w') as f: 
... for i in xrange(998): 
...  f.write(uuid.uuid4().get_hex() + '\n') 
... 
>>> 
>>> from itertools import groupby, count  
>>> with open('input.txt', 'r') as f: 
...  samples = groupby(f, key=lambda k, line=count(): next(line)//100) 
...  for i in samples: 
...  print i 
... 
(0, <itertools._grouper object at 0x7f174f170c50>) 
(1, <itertools._grouper object at 0x7f1740804f50>) 
(2, <itertools._grouper object at 0x7f174f170c50>) 
(3, <itertools._grouper object at 0x7f1740804f50>) 
(4, <itertools._grouper object at 0x7f174f170c50>) 
(5, <itertools._grouper object at 0x7f1740804f50>) 
(6, <itertools._grouper object at 0x7f174f170c50>) 
(7, <itertools._grouper object at 0x7f1740804f50>) 
(8, <itertools._grouper object at 0x7f174f170c50>) 
(9, <itertools._grouper object at 0x7f1740804f50>)