You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用接收两个参数的函数对Python3列表进行排序?

排序带双参数函数的Python列表问题

问题场景

排序时依赖的函数需要接收两个参数,在使用sorted()的key参数时遇到参数传递问题。

问题代码

sorted_list = sorted(my_list_of_objects, key=my_number_giving_function(???,y))

单参数函数的参考写法

sort(my_list_of_objects, key=my_number_giving_function)

尝试的代码及报错

直接传递参数的写法:

sorted_list = sorted(my_list_of_objects, key=my_number_giving_function(y))

触发报错:

missing 1 required positional argument: y

解决方案

用lambda表达式作为中间层,自动接收列表中的每个元素作为第一个参数,同时传入固定的第二个参数y:

sorted_list = sorted(my_list_of_objects, key=lambda x: my_number_giving_function(x, y))

内容的提问来源于stack exchange,提问作者DevTTW

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 12:25:18