You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python批量打开编辑保存多文件时后续输出文件大小逐次增大问题

问题原因

result 列表被定义在文件遍历循环的外部,处理完单个文件后没有做清空操作。每次读取新文件的行数据都会追加到同一个result列表中,写入第N个输出文件时,result内已经累计了前N个文件的所有处理结果,因此输出文件大小会逐次递增。

修复方法

将result = []的初始化逻辑移动到遍历文件的for循环内部,保证每次处理新文件时,都使用空列表存储当前文件的处理结果,不会和之前文件的内容累加。

修复后的代码如下:

import json
import os
from datetime import datetime
os.chdir('C:\\Users\\user1\\Desktop\\Test')
list_Files = []

date = datetime.now()
counter = 0
cnt = 0
for single_file in os.listdir('C:\\Users\\user1\\Desktop\\Test') :
    result = [] # 移到循环内部,每次处理新文件前初始化空列表
    list_Files.append(single_file)
    print(single_file)
    with open(single_file, encoding='utf-8') as fn:
        for line in fn.readlines():
            counter+=1
            result.append(json.loads(line))                  
    cnt+=1
    print(cnt)
    json_file = 'C:\\Users\\user1\\Desktop\\Out\\tst_'+f"{str(single_file)}{cnt}"+'.json'
    with open(json_file, 'w') as outfile:
        json.dump(result, outfile)

内容的提问来源于stack exchange,提问作者Muthana Mhairat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 00:48:03