python max和min函数的高级用法

首先我们先看看正常max和min 的普通使用方法:

students={'zs':18,'ls':21,'wu':19}
print(max(students.values()))  #21

这样的比较确实能取出最大的年龄,但是完全不知道这是谁对应的。我们可以使用下面的方法来处理一下数据可以实现我们的要求。

students={'zs':18,'ls':21,'wu':19}
stu=zip(students.values(),students.keys())
print(max(stu))  #(21, 'ls')  

#也就是说,我们在使用max或者min进行排序前,可以先对数据进行加工,这样可以达到更加理想的效果

我们在来看看max函数的原型。max(iterable, key, default) 。max函数的本质是去遍历传入的参数,然后返回它的一个元素,至于key是传入一个函数,它的作用就是决定要按什么东西去比较大小。

students=[
        {'name':'zs','age':18},
        {'name':'ls','age':21},
        {'name':'ww','age':19}
    ]
    print(max(students,key=lambda dict:dict['age']))    #{'name': 'ls', 'age': 21}

  首先我们看看上面代码的返回值,不管后面key怎么操作,返回值一定是students的一个元素,也就是一个字典。然后后面的key函数就是去处理遍历的元素,决定要比较哪一部分。

 

转载于:https://www.cnblogs.com/linshuhui/p/8982635.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值