带数字和字符串的元组列表

2024-05-18 21:41:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个元组列表,可能如下所示:

[(23, 'somestr'), (30, 'someotherstr'), (15, 'someotherstr2')]

我需要提取最小数的元组,并得到该元组的字符串。为了找到最小值,我做了:min([i[0] for i in list])。在

不过,怎么弄到绳子呢?嵌套列表理解?我尝试了几种方法,但是我不确定如何保留元组的索引,或者如何在list comprehension语句中获取它。在


Tags: 方法字符串in列表for语句minlist
3条回答
min(your_list)[1] #would be sufficient

在这里,您可以直接比较元组。但是,更一般的方法是将key参数用于^{}

In [21]: min(l, key=operator.itemgetter(0))[1]
Out[21]: 'someotherstr2'

在这里,key=operator.itemgetter(0)提取元组的第零个元素,并使用结果作为键来决定哪个元组最小。在

元组可以比较:

>>> (1, 'hello') < (2, 'bye')
True

元组的比较有点像字符串:考虑元素成对,直到找到不相等的对,然后元素较小的元组被视为更小。在

因此,您只需获得列表的最小值,第一个值最小的元组将被返回。然后可以查看第二个元素中的字符串:

^{pr2}$

相关问题 更多 >

    热门问题