如何找到Python中的列表?
How to find the list in Python?
我在Python中有一个列表:
list_all = [['orange', 'the dress', '5643,43245,5434,22344,34533'],
['pink', 'cars', '12322,4455,533,2344,24324,64466,543342'],
['dark pink' 'doll', '12422,4533,6446,35563'],
['blue', 'car', '43356,53352,546'],
['sky blue', 'dress', '63463,3635432,354644,6544,6444,644,74245']]
我想 return 最后一部分中数字最多的前 3 个列表。像这样:
result = [['orange', 'the dress', '5643,43245,5434,22344,34533'],
['pink', 'cars', '12322,4455,533,2344,24324,64466,543342'],
['sky blue', 'dress', '63463,3635432,354644,6544,6444,644,74245']]
我只是找不到这样做的逻辑。我已经尝试了很多,但只是被一行代码卡住了:
for each in list_all:
if len(each[-1].split(','))
请帮我解决这个问题。我是 Python 的新手,正在学习它。非常感谢。
这是一个方便的 one-liner:
print(sorted(all_list, key=lambda l: len(l[-1].split(',')))[:-3])
您可以使用sorted
函数
print(sorted(list_all, key=lambda e: len(e[-1].split(',')), reverse=True)[:3])
输出:
[
['pink', 'cars', '12322,4455,533,2344,24324,64466,543342'],
['sky blue', 'dress','63463,3635432,354644,6544,6444,644,74245'],
['orange', 'the dress', '5643,43245,5434,22344,34533']
]
sorted()
函数按特定顺序(升序或降序)对给定 iterable 的元素进行排序,returns 它作为一个列表。
有关 sorted()
的更多信息
我在Python中有一个列表:
list_all = [['orange', 'the dress', '5643,43245,5434,22344,34533'],
['pink', 'cars', '12322,4455,533,2344,24324,64466,543342'],
['dark pink' 'doll', '12422,4533,6446,35563'],
['blue', 'car', '43356,53352,546'],
['sky blue', 'dress', '63463,3635432,354644,6544,6444,644,74245']]
我想 return 最后一部分中数字最多的前 3 个列表。像这样:
result = [['orange', 'the dress', '5643,43245,5434,22344,34533'],
['pink', 'cars', '12322,4455,533,2344,24324,64466,543342'],
['sky blue', 'dress', '63463,3635432,354644,6544,6444,644,74245']]
我只是找不到这样做的逻辑。我已经尝试了很多,但只是被一行代码卡住了:
for each in list_all:
if len(each[-1].split(','))
请帮我解决这个问题。我是 Python 的新手,正在学习它。非常感谢。
这是一个方便的 one-liner:
print(sorted(all_list, key=lambda l: len(l[-1].split(',')))[:-3])
您可以使用sorted
函数
print(sorted(list_all, key=lambda e: len(e[-1].split(',')), reverse=True)[:3])
输出:
[
['pink', 'cars', '12322,4455,533,2344,24324,64466,543342'],
['sky blue', 'dress','63463,3635432,354644,6544,6444,644,74245'],
['orange', 'the dress', '5643,43245,5434,22344,34533']
]
sorted()
函数按特定顺序(升序或降序)对给定 iterable 的元素进行排序,returns 它作为一个列表。
有关 sorted()