python中的内置函数max()和min()及mas()函数的高级用法

yipeiwu_com6年前Python基础

max(iterable, *[, key, default])

max(arg1, arg2, *args[, key])

函数功能为取传入的多个参数中的最大值,或者传入的可迭代对象元素中的最大值。默认数值型参数,取值大者;字符型参数,取字母表排序靠后者。还可以传入命名参数key,其为一个函数,用来指定取最大值的方法。default命名参数用来指定最大值不存在时返回的默认值。

eg

  a.传入的多个参数的最大值

print(max(1,2,3,4))

输出

  b.1 传入可迭代对象时,取其元素最大值

s = '12345'
print(max(s))

输出

  b.2 传入可迭代对象为空时,必须指定参数default,用来返回默认值

print(max((),default=1))
print(max(()))

输出

Traceback (most recent call last):
  File "G:/pycode/内置函数/max_ex.py", line 8, in <module>
    print(max(()))
ValueError: max() arg is an empty sequence

  c.传入命名参数key,其为一个函数,用来指定取最大值的方法

s = [
  {'name': 'sumcet', 'age': 18},
  {'name': 'bbu', 'age': 11}
]
a = max(s, key=lambda x: x['age'])
print(a)

输出

{'name': 'sumcet', 'age': 18}

min()函数与max()用法相同,返回最小值

下面看下python: min 和 max 函数

对于元组

max(tuple)

返回元组中元素最大值。

min(tuple)

返回元组中元素最小值。

cmp(tuple1,tuple2)

比较两个元组元素。

tuple(seq)

将列表转换为元组。

>>> min(1,2,3) 
>>> max(1,2,3) 

 对于二维数组

>>> a = array([[1,2,3],[0,0,0],[-1,-2,-3],[2,2,2]]) 
>>> a.min(0) #表示不同行相比较得出最小 
array([-1, -2, -3]) 
>>> a.min(1) #表示每一行自身元素相互比较得出最小 
array([ 1, 0, -3, 2]) 

下面再看下Python内置函数max()高级用法

不管是排序还是选取最大值或者最小值,都应该有个规则或者顺序,而平时我们所说的最大值或最小值实际上也是在某种排序规则或顺序下的最大值和最小值。Python内置函数max()、min()和sorted()以及列表方法sort()都有一个参数key用来指定排序规则,解决的就是这个问题。key参数应该是一个可调用对象,在Python中,类、自定义函数、内置函数、lambda表达式、带有特殊方法__call__()的对象都属于可调用函数。关于key参数的更多用法请参考文末的相关阅读。

总结

以上所述是小编给大家介绍的python中的内置函数max()和min()及mas()函数的高级用法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

django 消息框架 message使用详解

前言 在网页应用中,我们经常需要在处理完表单或其它类型的用户输入后,显示一个通知信息给用户。 对于这个需求,Django提供了基于Cookie或者会话的消息框架messages,无论是匿...

解决python 无法加载downsample模型的问题

downsample 在最新版本里面修改了位置 from theano.tensor.single import downsample (旧版本) 上面以上的的import会有error...

python实现Flappy Bird源码

python实现Flappy Bird源码

Flappy Bird是前段时间(好像一年or两年前....)特别火的有一个小游戏,相信大家都玩过。 Flappy Bird操作简单,通过点击手机屏幕使Bird上升,穿过柱状障碍物之后得...

python微信公众号开发简单流程

python微信公众号开发简单流程

本文为大家分享了python微信公众号开发的简单过程,供大家参考,具体内容如下 网上有很多微信公众号的开发教程,但是都是好几年前的了,而且很多都是抄袭其他人的,内容几乎一模一样。真的无语...

启动targetcli时遇到错误解决办法

 启动targetcli时遭遇ImportError: cannot import name ALUATargetPortGroup故障 targetcli是一个iSCSI配置...