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

如何从首元素为索引的二维数组中按dt_name值查询对应索引

实现方案

以下为Python语言的实现方式,适配不同使用场景:

1. 单次匹配场景

如果仅需偶尔查询指定dt_name对应的数值,直接遍历数组,找到匹配项后立即返回即可,避免不必要的性能消耗:

def query_id(dt_arr, target_name):
    for id_val, info_dict in dt_arr:
        if info_dict.get("dt_name") == target_name:
            return id_val
    # 无匹配时可自定义返回值,例如返回-1或None
    return None

# 调用测试
target_arr = [[0, {'dt_name': 'Go'}], [1, {'dt_name': 'Stop'}]]
print(query_id(target_arr, "Go"))  # 输出 0
print(query_id(target_arr, "Stop"))  # 输出 1

2. 高频查询场景

如果需要多次查询不同的dt_name对应值,可以提前构建映射字典,后续查询时间复杂度为O(1),性能更高:

target_arr = [[0, {'dt_name': 'Go'}], [1, {'dt_name': 'Stop'}]]
# 预构建映射关系
name_id_map = {item[1]["dt_name"]: item[0] for item in target_arr}

# 直接查询使用
print(name_id_map["Go"])  # 输出 0
print(name_id_map["Stop"])  # 输出 1

提示:如果数组中存在多个相同dt_name的元素,遍历方法会返回第一个匹配的数值,字典构建方法会保留最后一个匹配的数值,可根据业务需求调整逻辑。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 19:57:04