> Thanks for making me aware of the (UNIX) split command (split -l 5
> inFile.txt), it's short, it's fast, it's beautiful.
>
> I am still wondering how to do this efficiently in Python (being kind
> of new to it... and it's not for homework).
Something like this should do the job:
def nlines(num, fileobj):
done = [False]
def doit():
for i in xrange(num):
l = fileobj.readline()
if not l:
done[0] = True
return
yield l
while not done[0]:
yield doit()
for i, group in enumerate(nlines(5, open('bigfile.txt'))):
out = open('chunk_%d.txt' % i)
for line in group:
out.write(line)
> I am still wondering how to do this in Python (being new to Python)
This is just one way of doing it, but not as concise as using split...
Alberto
--
http://mail.python.org/mailman/listinfo/python-list