python-3.x - 如何在python中构建排序键功能?
问题描述
我现在在在线课程中学习,而不是在这个练习中挣扎:我得到了一个元组列表:
[("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)
请帮我
解决方案
您可以像这样根据每个元组的第二个元素(其价格)进行排序:
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()
推荐阅读
- nginx - 将nginx 8080端口转发到80
- java-8 - java 8 流和 foreach 的特定用例
- linux - Bash脚本如何远程运行命令然后退出远程终端
- matlab - 如何从 Labview 调用 Matlab 函数
- azure - 如何在 Azure WebApps 中调用 Azure AD 身份验证背后的 API?
- node.js - 为什么 sinon 会忽略我对另一个函数的调用?
- php - 在 Macroable.php 第 104 行:Method Illuminate\Database\Schema\Blueprint::id 不存在
- aws-lambda - 用于生成 AWS lambda 包的 Bazel 规则
- python - 是否可以尝试多个 XPATH?蟒蛇硒
- json - Cypress:读取,修改和写入以变量作为字段名称的json文件