我有一个生成字符串的生成器,我需要将它写入输出文件。但是,我还需要让每个输出文件包含固定数量的行。我也想逐步做到这一点。这意味着我不想保存内存中的所有行,并将它们同时刷新到一个文件中,因为每个文件所需的行数可能很大。在Python中使用固定行数写入多个文件
我似乎无法找到一种方法来在Python中使用“with”语句来完成此操作。
喜欢的东西:
for line in line_generator:
write_to_output_file(line, _MAX_LINES_PER_FILE)
就这样,您的答案会泄漏文件描述符,因为文件从不关闭。 –
当新的'output_file'打开时(因为它的引用计数变为零),该文件被隐式关闭 – donkopotamus
由于您正在为每行打开一个文件,这会带来很多开销吗? – scabbage