python中比较重要的几个函数_python,比较函数中带两个参数的排序列表

我看了很多书,读了很多问题,但是我不知道如何给排序方法的键赋予两个参数,所以我可以做一个更复杂的比较。

示例:class FruitBox():

def __init__(self, weigth, fruit_val):

self.weigth = weigth

self.fruit_val = fruit_val

我想用水果来比较水果盒,但是!而且它们的箱子比其他的更重。

所以应该是:f1 = FruitBox(2,5)

f2 = FruitBox(1,5)

f3 = FruitBox(2,4)

f4 = FruitBox(3,4)

boxes = [f1,f2,f3,f4]

boxes.sort(key = ???) # here is the question

预期结果:

=>[FruitBox(2,4),FruitBox(3,4),FruitBox(1,5),FruitBox(2,5)]

有没有一种方法可以发送一个带有两个参数的函数,当我这样做的时候def sorted_by(a,b):

#logic here, I don't know what will be yet

我知道boxes.sort(key=sorted_by)

它抛出:Traceback (most recent call last):

File "python", line 15, in

TypeError: sort_by_b() missing 1 required positional argument: 'b'

我怎么能给这把钥匙两个论点呢?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值