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

如何从含数字姓名映射的文本JSON中匹配Python数组姓名对应5-6位数字

匹配查询实现方案

你的场景数据量极小,直接用Python原生逻辑处理就是最优解,完全不需要引入SQL等额外工具,24000条映射的总内存占用不到1MB,查询总耗时在毫秒级。

核心逻辑

原JSON存储的是「数字:姓名」的正向映射,你需要按姓名查询数字,直接把映射倒转为「姓名:数字」的字典即可,字典的查询时间复杂度是O(1),远高于遍历数组搜索的效率。

实现代码

import json

# 读取JSON映射文件
with open("你的映射文件路径.txt", "r", encoding="utf-8") as f:
    num_to_name = json.load(f)

# 构建倒排索引:姓名 -> 数字
name_to_num = {name: num for num, name in num_to_name.items()}

# 待查询的姓名数组
target_names = ['Jacob', 'Janet', ..., 'John']

# 匹配生成元组,可自行调整匹配不到的情况的处理逻辑
result_tuples = []
for name in target_names:
    if name in name_to_num:
        result_tuples.append((name, name_to_num[name]))

其他方案适用场景

只有当后续数据量涨到百万级以上、或者需要支持多维度复杂查询时,再考虑引入SQLite这类轻量数据库,当前场景用原生方案足够高效,还能避免额外的依赖配置成本。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 03:27:01