You need to enable JavaScript to run this app. 如何仅使用Python原生库获取含最小值对应文件名的元组列表
优惠活动
大模型
产品
解决方案
定价
更多

如何仅使用Python原生库获取含最小值对应文件名的元组列表

实现方案

核心调整逻辑

  • 原代码逐维度提取最小值时,仅截取了距离数值,丢弃了对应的文件名关联信息
  • 调整方式:构造候选值时同步绑定文件名,通过min的key参数指定仅以维度数值作为比较依据,直接返回符合格式要求的(文件名, 维度最小值)元组,全程仅使用Python原生库

调整后代码

import itertools

# 与示例数据维度数匹配
K = 10
arrayFiles = []

for subset in itertools.combinations(distances, 2):
    dim_results = []
    for k in range(K):
        # 构造维度候选:(文件名, 对应维度数值)
        candidates = [(file_name, dist[k]) for file_name, dist in subset]
        # 仅按维度数值比较大小,直接返回绑定文件名的最小值结果
        min_item = min(candidates, key=lambda x: x[1])
        dim_results.append(min_item)
    arrayFiles.append(dim_results)

匹配验证

针对示例数据中第一个二元组合(highway_bost174 与 ibis_142 配对),代码输出与给定的示例结构完全一致:

  • 第0维:两值为0.0、8.708170812,最小值对应("highway_bost174", 0.0)
  • 第1维:两值为8.708170812、0.0,最小值对应("ibis_142", 0.0)
  • 第2维:两值为4.088197921、10.518235207,最小值对应("highway_bost174", 4.088197921)
  • 后续维度计算结果完全匹配示例给出的逐维度取值,最终输出为嵌套列表结构,每个子元素均为绑定了对应文件名的维度最小值元组

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.24 02:06:04