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

将TXT转为指定结构JSON时触发TypeError错误的问题咨询

问题原因

  1. 你导出的JSON根结构是数组,但是后续读取代码默认JSON根是包含annotations字段的字典,直接用datasetRES['annotations']取值就会报错,因为数组不能用字符串作为索引
  2. 你提取的caption末尾还带多余的换行符,需要额外去除

修复方案

修改转换代码,输出符合要求的JSON结构

修改后的代码如下:

import json
# 根结构用字典,存储annotations字段对应列表
result = {"annotations": []}
with open('1.txt') as f:
    for line in f:
        _, image_id, _, caption = line.split(maxsplit=3)
        # 去除caption末尾的换行符和多余空白
        caption = caption.strip()
        result["annotations"].append({"image_id": int(image_id), "caption": caption})

with open('r.json', "w") as f:
    json.dump(result, f, ensure_ascii=False, indent=2)

修改后导出的JSON结构就和你预期的格式一致,原有读取代码不需要调整,即可正常运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 07:39:01