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

如何使用jq或boto3将空格分隔姓名列表文件转换为指定JSON格式

空格分隔姓名列表转目标JSON的实现方案

方案1:使用jq命令行工具实现(轻量快速,仅需命令行操作)

直接执行以下命令即可完成转换:

jq -R -s '{"names": split(" ") | map(select(length > 0))}' names.txt > output.json

参数说明:

  • -R:按原始字符串模式读取输入,不自动解析为JSON
  • -s:将所有输入内容合并为单个字符串处理
  • split(" "):按空格拆分字符串为数组
  • map(select(length > 0)):过滤掉空字符串,规避文件首尾空格、连续空格导致的无效空元素问题

转换示例:输入文件内容为name1 name2 name3时,输出的output.json内容为:

{
  "names": [
    "name1",
    "name2",
    "name3"
  ]
}

方案2:Python + boto3实现(适配需要对接AWS服务的场景)

如果后续需要将转换后的JSON直接上传到S3等AWS资源,可在Python环境中结合boto3实现:

import json
import boto3

# 读取原始姓名文件
with open("names.txt", "r", encoding="utf-8") as f:
    raw_content = f.read().strip()

# 拆分姓名为数组,过滤空元素
name_arr = [item for item in raw_content.split(" ") if item]

# 构造目标JSON结构
target_data = {"names": name_arr}

# 可选:生成本地JSON文件
with open("output.json", "w", encoding="utf-8") as f:
    json.dump(target_data, f, ensure_ascii=False, indent=2)

# 可选:使用boto3直接上传到S3存储桶
s3_client = boto3.client("s3")
s3_client.put_object(
    Bucket="替换为你的S3桶名",
    Key="output.json",
    Body=json.dumps(target_data, ensure_ascii=False),
    ContentType="application/json"
)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 12:54:01