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

如何将指定结构化TXT转换为目标格式JSON?split方法后续步骤存疑

把结构化TXT转换为指定JSON格式的解决方案

问题描述

你有如下结构化TXT数据:

WarehouseId WarehouseName   SKU NUMBER  SKU Name    rackSection gatewayID   tagAddress  lightActive caseCount
50  Lakewood    45234   Mountain Dew (20oz) 4   1   1   True    24
50  Lakewood    65197   Dr Pepper (20oz)    5   1   2   True    24
50  Lakewood    45206   Diet Dr Pepper (20oz)   5   1   3   True    24
50  Lakewood    65209   Diet Pepsi (20oz)   6   1   4   True    24

尝试用data.split(" ")处理但不清楚后续步骤,需要转换成指定格式的JSON文件。

解决方案(Python实现)

用Python内置的json模块即可完成转换,步骤如下:

  1. 读取TXT内容并过滤无效行
  2. 拆分表头与数据行,建立字段映射
  3. 逐行处理数据,转换为对应格式的字典
  4. 将字典列表写入JSON文件

完整代码示例:

import json

# 读取TXT文件(替换为你的文件路径)
with open('warehouse_data.txt', 'r') as f:
    # 过滤空行并去除每行首尾空白
    lines = [line.strip() for line in f if line.strip()]

# 提取表头,按制表符分割(若为空格分隔则替换为split())
headers = [h.strip() for h in lines[0].split('\t') if h.strip()]

# 生成目标字典列表
result = []
for line in lines[1:]:
    values = [v.strip() for v in line.split('\t') if v.strip()]
    item = {}
    for header, val in zip(headers, values):
        # 数字类型字段转int,其余保留原格式
        if header not in ['WarehouseName', 'SKU Name', 'lightActive']:
            item[header] = int(val)
        else:
            item[header] = val
    result.append(item)

# 写入JSON文件
with open('warehouse_data.json', 'w') as f:
    json.dump(result, f, indent=4)

代码说明

  • 读取文件时自动过滤空行,避免无效数据干扰
  • 拆分数据时用split('\t')适配制表符分隔的TXT,若你的文件是多空格分隔,直接换成split()即可(默认按任意空白字符分割)
  • 针对数字字段做类型转换,确保JSON中数字为数值类型而非字符串
  • indent=4参数让生成的JSON格式对齐,和你期望的输出完全一致

运行代码后,会生成warehouse_data.json文件,格式完全符合要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 01:25:27