我能够在社区的帮助下编写一些代码,但是我遇到了一个问题,我的python在迭代中运行并写出真的非常慢,因为我的其他脚本执行相同但完全相同但是一个人跑得超快,这个代码中有什么值得引起的吗?
with open('c:/file.sql') as inf, open('c:/file.txt','w') as outf:
for i in xrange(47):
inf.next()
for line in inf:
data = line.split(',')
if len(data) < 15:
inf.next()
elif len(data) > 35:
hash = data[13]
select = hash[3:len(hash)-1]
outf.write(select + '\n')
答案 0 :(得分:3)
您的代码的较小版本:
from itertools import imap, islice
with open('c:/file.sql') as inf, open('c:/file.txt','w') as outf:
for line in imap(str.strip, islice(inf, 47, None)):
data = line.split(',')
if len(data) > 35:
hash = data[13]
select = hash[3:-1]
outf.write(select+'\n')
答案 1 :(得分:0)
所以考虑到评论......我想这可能是你想要的:
with open('c:/file.sql') as inf, open('c:/file.txt','w') as outf:
for line in itertools.islice(inf, 47, None):
data = line.split(',')
if len(data) > 35:
outf.writeline(data[13][3:-1])