-4
4

2 に答える 2

0

It should be like this in python.

import csv
fo = csv.writer(open('out.csv','wb'))
with open('eg.txt', 'r') as f:
    for line in f:
        assert line[:3] == '00I'
        buf = []
        for i in range(88):
            line = f.next()
            buf.append(line.strip()[2:])

        line = f.next()
        assert line[:3] == 'A00'
        line = f.next()
        assert line[:3] == 'A10'
        line = f.next()
        assert line[:3] == 'A21'
        fo.writerow(buf)
于 2012-07-04T19:04:55.080 に答える
0

If you are absolutely certain that each entry is 92 lines long:

from itertools import izip
import csv

with open('data.txt') as inf, open('data.csv','wb') as outf:
    lines = (line[2:].rstrip() for line in inf)
    rows = (data[1:89] for data in izip(*([lines]*92)))
    csv.writer(outf).writerows(rows)
于 2012-07-04T19:14:54.430 に答える