python - 如何从元组列表的第二项中获取最小的项?
问题描述
首先对令人困惑的标题感到抱歉,我不知道如何在没有示例的情况下解释我的问题。
我有以下图表
graph = {
1: [(3, 5), (4, 1), (5, 4)],
2: [(5, 9)],
3: [(5, 1), (6, 1)],
4: [(2, 11), (8, 2)],
5: [(4, 6), (2, 6)],
6: [(7, 1)],
7: [(5, 7), (2, 1)],
8: [(2, 6)],
}
我希望能够从给定数字的元组的第二项中获得最小的数字。例如,如果我给函数数字 1,我希望它从第二个元组返回 1。如果输入是 4,我希望它从第二个元组返回 2。
我目前的方法是min((graph[s])[1])
,但这并没有真正起作用,并且主要返回索引错误。
编辑:我现在解决了这个问题(min(graph[s])[0], min(graph[s])[1])[1]
(出于某种原因)它适用于所有情况(问题在于只包含一个元组的列表)。
解决方案
只需使用:
s = 7
print(min(min(graph[s], key= lambda t:min(t))))
推荐阅读
- regex - 用破折号替换连字符
- javascript - 如何在javascript中获得不同的id值?
- r - Xaringan: Export slides to PDF while preserving formatting
- java - 如何使用 AgentBuilder 替换类的方法
- java - 无法使用 MySQL 从 GlassFish 5 服务器中的模型 @Entity 类生成数据库模式
- c# - ASP.NET MVC 和实体框架自定义 getter 设置器不起作用
- linux - 如果我删除 /Dev 文件会发生什么
- javascript - 响应书签栏的 CSS
- django - 保存模型对象时,如何创建由 FileFields/ImageFields 选择的压缩文件?
- c++ - 在函数中而不是在文件开头初始化静态变量