仅在手动停止程序时,在python中写入文件才完成

问题描述 投票:0回答:1

我有一个简单的程序,可以在for循环中写入文件(超过30k次迭代)。我注意到该程序花费了异常长时间才能完成,此后我决定将其终止。它正在写入的文件有29900行,创建时需要30秒,其余100条未写入-该程序不会退出,并且需要几个小时才能完成。

一旦我杀了它,它就完成了写剩下的大约100行。

f1 = open('parts.txt', "w")

for line in lines:
    category          = line[2]

    f1.write(category + '\n')

print('------- done -------')
f1.close()

我有什么明显的失踪吗?

我有一个简单的程序,可以在for循环中写入文件(超过30k次迭代)。我注意到该程序花费了异常长时间才能完成,此后我决定将其终止。正在写入的文件...

python
1个回答
1
投票

使用with语句,通过这种方式始终关闭文件,而与退出状态无关。

© www.soinside.com 2019 - 2024. All rights reserved.