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

如何获取列表中首元素为最小值的所有元组实例?

解决方法

你用min(roster)只能拿到列表里第一个首元素最小的元组,转成列表后自然只能得到单个元组的拆分结果,没法获取所有符合条件的项。要拿到所有首元素为最小值的元组,可以分两步实现:

  1. 先计算所有元组首元素的最小值
  2. 筛选出所有首元素等于这个最小值的元组

完整代码示例

roster = [(1,'a'),(1,'b'),(3,'c')]
# 获取首元素的最小值
min_first_val = min(item[0] for item in roster)
# 筛选所有符合条件的元组
smallest_teams = [item for item in roster if item[0] == min_first_val]
print(smallest_teams)  # 输出: [(1, 'a'), (1, 'b')]

补充说明

  • 用生成器表达式min(item[0] for item in roster)计算最小值,比先把所有首元素存成列表更节省内存
  • 列表推导式是Python中筛选元素最简洁高效的方式,一行代码就能完成筛选逻辑

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 16:02:02