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设计】网站的支持!

相关文章

如何利用python制作时间戳转换工具详解

前言: 时间戳的定义 Unix时间戳(Unix时间戳)或称Unix时间(Unix时间),POSIX时间(POSIX时间),是一种时间表示方式,定义为从格林威治时间1970年01月01日0...

python打印9宫格、25宫格等奇数格 满足横竖斜相加和相等

python打印9宫格、25宫格等奇数格 满足横竖斜相加和相等

相信大家都做过九宫格的游戏,规则是要求填数字1-9在九个方格内,使横竖斜相加和相等。只填九个那可能有些简单,但是填25个,填49个,81个等奇数个那,这时候就要求我们去找其中的规律。找到...

python yield关键词案例测试

测试环境 win10 python 3.5 yield功能简介 简单来说,yield 的作用就是把一个函数变成一个 generator,带有 yield 的函数不再是一个普通函数,P...

Python 3.8新特征之asyncio REPL

前言 我最近都在写一些Python 3.8的新功能介绍的文章,在自己的项目中也在提前体验新的Python版本。为什么我对这个Python 3.8这么有兴趣呢?主要是因为在Python 2...

python3.6利用pyinstall打包py为exe的操作实例

一、电脑需安装32位的python3.6(注意是32位的python而不是操作系统是32位,安装64的python会发现pyinstall无法提供服务) 二、安装python之后安装py...