如何在python中建立一个排序键函数?

问题描述 投票:0回答:1

我现在正在学习在线课程,并没有在这个练习中挣扎:Ive得到了一个元组的列表。

 [("candy","5.5"),("banana","2.3"),("chocolate","4.4")] 

我需要建立一个函数,以价格排序的元组。 为此,我需要建立一个关键函数,我可以把它放在 sorted() 我不知道它应该是怎样的,我试过了。

def choose_sec(my_list, new_list =[]):
  for i in my_list:
  new_list += i[1]
  for i in new_list:
    return int(i)

请帮助我

python-3.x list sorting tuples
1个回答
0
投票

你可以像这样根据每个元组的第二个元素(它的价格)进行排序。

sorted(a, key=lambda x: float(x[1]))

输出。

[('banana', '2.3'), ('chocolate', '4.4'), ('candy', '5.5')]

如果你不想要 lambda 表达式,你可以用普通函数来完成。

def sort_with_price(input_tuple):
    return float(input_tuple[1])

print(sorted(a, key=sort_with_price))

了解更多关于用 sorted() 此处

© www.soinside.com 2019 - 2024. All rights reserved.