0
我试图将一个非常大的文本文件分割成多个较小的文件。当我运行下面的代码时,第一个创建的文件是正确的。之后的所有内容都只包含'INSERT INTO ...'字符串,没有别的。在此先感谢动态地将文件分割成多个较小的文件
import math
interval = 100000
with open('my-big-file','r') as c:
for i, l in enumerate(c):
pass
length = i + 1
numOfFiles = int(math.ceil(length/interval))
with open('my-big-file','r') as c:
for j in range(0, numOfFiles):
with open('my-smaller-file_{}.sql'.format(j),'w') as n:
print >> n, 'INSERT INTO codes (code, some-field, some-other-field) VALUES'
for i, line in enumerate(c):
if i >= j * interval and i < (j + 1) * interval:
line = line.rstrip()
if not line: continue
print >> n, '(%s,'something','something else'),' % (line)
else:
break
这是完美的工作。正是我想要做的!谢谢 – knnnrd