python - 如何比较子列表的值
问题描述
我试图在嵌套列表中找到第二个最小值,其中每个子列表都包含一个名称和一个浮点值。
如果有任何重复值,我需要帮助来比较相关的浮点值。
if __name__ == '__main__':
n = int(input())
list = []
for _ in range(n):
name = input()
score = float(input())
list.append([name,score])
listsort = sorted(list,key = lambda x:x[1])
newlist = listsort[1:2]
#if listsort[]
newlist.sort()
print(newlist)
它工作正常,没有重复的值。
Input :
5
Harry
37.21
Berry
37.21
Tina
37.2
Akriti
41
Harsh
39
输出 :[['Berry', 37.21] ['Harry', 37.21]]
解决方案
调整您的代码,我们可以枚举列表并检查浮点值是否等于listsort[1][1]
(第二个最小值)。如果是,则返回人员和浮点值。
if __name__ == '__main__':
n = int(input())
list = []
for _ in range(n):
name = input()
score = float(input())
list.append([name,score])
listsort = sorted(list,key = lambda x:x[1])
print([listsort[i] for i, x in enumerate(listsort) if x[1] == listsort[1][1]])
输入:
4
Tom
1
Jeff
2
Bob
2
Henry
3
结果:
[['Jeff', 2.0], ['Bob', 2.0]]
推荐阅读
- javascript - 实现 webassembly angular 12 错误加载 .wasm
- javascript - 在这里反应初学者!如何通过 FTP 启动 React 网站?
- reactjs - 带有 React Hooks 和 IntersectionObserver API 的粘性导航标头
- html - 如何使卡片全宽并且即使在移动视图中也显示图像(使用tailwindcss)
- java - 提高预先和追加一百万次计算的速度
- reactjs - 如何在 createAsyncThunk 上访问 Redux Toolkit 上的当前状态
- javascript - SVG路径鼠标悬停不适用于Leaflet
- html - 图标字体:字体与字体类中的连字
- javascript - 一个非常简单的逻辑javascript程序的问题
- twitter - 查找特定用户在一段时间内使用特定关键字的推文