对象
line = f.readline() # 调用文件的 readline()方法
line.split("\001")
while line:
print line, # 后面跟 ',' 将忽略换行符
#print(line, end = '') # 在 Python 3 中使用
line = f.readline()
f.close()
N = 0.618
lines = open('a.txt', 'r').readlines()
lines_for_b = int(len(lines) * N)
open('b.txt','w').write(''.join(lines[:lines_for_b]))
open('c.txt','w').write(''.join(lines[lines_for_b:]))python的多线程为伪多线程,多线程并不能提高文件IO的速度,在读取文件时使用直接
读取 for line in open('文件名', 'r') 效率最高,因为此方式为直接读取,不像其它方式要把文件全部加载到内存再读取,所以效率最高。分割时文件时,提前计算好行数,把读取的每固定数量的行数存入新文件,直接读取完成,最后删除旧文件,即可实现文件分割。
示意代码:line_count = 0
index = 0
fw = open('part'+str(index)+'.log', 'w')
for line in open('filename.log', 'r'):
fw.write(line)
line_count += 1
# 假设每10000行写一个文件
if line_count > 10000:
fw.close()
index += 1
fw = open('part'+str(index)+'.log', 'w')
fw.close()
评论列表(0条)