python中5个带key的内置函数

简介: python中5个带key的内置函数

1.max取最大值函数


max() 方法返回给定参数的最大值,参数可以为序列。

lis = [1,2,3,-4]
print(max(lis)) #返回lis列表中的最大值
'''结果:
3
'''
print(max(lis,key=abs)) #key参数指向绝对值函数,返回的结果是-4


2.min取最小值函数


min() 方法返回给定参数的最小值,参数可以为序列。

lis = [-1,0,1,2]
print(min(lis)) #返回lis列表中的最小值
'''结果:
-1
'''


3.filter过滤函数


filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象。


该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回True 的元素放到新列表中。


语法格式:filter(function, iterable)


实例1

def is_odd(x):
    return x % 2 == 1
print(list(filter(is_odd,[1,2,3,4,5,6,7,8,9]))) #python3中不使用list强转数据类型的话,filter返回的是迭代器
'''结果:
[1, 3, 5, 7, 9]
'''

实例2

s = 'jason lv'
iterator = filter(lambda x : x !='a',s)
s1 = ''
for i in iterator:
    s1 += str(i)
print(s1)
'''结果:
json lv
'''


4.map序列映射函数


map() 会根据提供的函数对指定序列做映射。

第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回一个迭代器对象。

语法格式:map(function, iterable, …)

实例1

def pow2(x):
    return x * x
lis = [1,2,3,4,5,6]
print(list(map(pow2,lis)))
'''结果:
[1, 4, 9, 16, 25, 36]
'''

实例2

'''
学习中遇到问题没人解答?小编创建了一个Python学习交流群:711312441
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
lis = [1,2,3,4,5,6]
print(list(map(lambda x : x *10 if x >3 else x / 2,lis)))
'''结果:
[0.5, 1.0, 1.5, 40, 50, 60]
'''


5.sorted序列排序函数


Sort函数是list列表中的函数,而sorted可以对list或者iterator进行排序。


语法格式:sorted(iterable[, cmp[, key[, reverse]]])


参数说明:


(1) cmp参数


cmp接受一个函数,拿整形举例,形式为:

def f(a, b):
    return a - b

如果排序的元素是其他类型的,如果a逻辑小于b,函数返回负数;a逻辑等于b,函数返回0;a逻辑大于b,函数返回正数就行了


(2)key参数


key也是接受一个函数,不同的是,这个函数只接受一个元素, 形式如下

def f(a):
    return len(a)

key接受的函数返回值,表示此元素的权值,sort将按照权值大小进行排序


(3)reverse参数


接受False

或者True

表示是否逆序

语法格式:sorted(iterable[, cmp[, key[, reverse]]])


实例1

lis = [3,2,1,4,5,6]
print(list(sorted(lis,reverse=True)))
'''结果
[6, 5, 4, 3, 2, 1]
'''
print(list(sorted(lis)))    #默认不指定reverse参数时,顺序是正序
'''结果
[1, 2, 3, 4, 5, 6]
'''

实例2

lis = ['adf ee','zcv','qwer','a s s w']
print(list(sorted(lis,key=len)))
'''结果:
['zcv', 'qwer', 'adf ee', 'a s s w']
'''
相关文章
|
3天前
|
存储 NoSQL 数据库连接
在Python程序中实现LevelDB的海量key的分批次扫描
通过本文的步骤,您可以在Python程序中实现对LevelDB海量key的分批次扫描。这样不仅能够有效地管理大规模数据,还可以避免一次性加载过多数据到内存中,提高程序的性能和稳定性。希望这篇指南能为您的开发工作提供实用的帮助。
43 28
|
3月前
|
Python
【python从入门到精通】-- 第五战:函数大总结
【python从入门到精通】-- 第五战:函数大总结
101 0
|
2月前
|
搜索推荐 Python
利用Python内置函数实现的冒泡排序算法
在上述代码中,`bubble_sort` 函数接受一个列表 `arr` 作为输入。通过两层循环,外层循环控制排序的轮数,内层循环用于比较相邻的元素并进行交换。如果前一个元素大于后一个元素,就将它们交换位置。
146 67
|
2天前
|
Python
[oeasy]python057_如何删除print函数_dunder_builtins_系统内建模块
本文介绍了如何删除Python中的`print`函数,并探讨了系统内建模块`__builtins__`的作用。主要内容包括: 1. **回忆上次内容**:上次提到使用下划线避免命名冲突。 2. **双下划线变量**:解释了双下划线(如`__name__`、`__doc__`、`__builtins__`)是系统定义的标识符,具有特殊含义。
17 3
|
6天前
|
JSON 监控 安全
深入理解 Python 的 eval() 函数与空全局字典 {}
`eval()` 函数在 Python 中能将字符串解析为代码并执行,但伴随安全风险,尤其在处理不受信任的输入时。传递空全局字典 {} 可限制其访问内置对象,但仍存隐患。建议通过限制函数和变量、使用沙箱环境、避免复杂表达式、验证输入等提高安全性。更推荐使用 `ast.literal_eval()`、自定义解析器或 JSON 解析等替代方案,以确保代码安全性和可靠性。
19 2
|
1月前
|
Python
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
50 18
|
25天前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
49 8
|
1月前
|
Python
Python中的函数
Python中的函数
45 8
|
2月前
|
监控 测试技术 数据库
Python中的装饰器:解锁函数增强的魔法####
本文深入探讨了Python语言中一个既强大又灵活的特性——装饰器(Decorator),它以一种优雅的方式实现了函数功能的扩展与增强。不同于传统的代码复用机制,装饰器通过高阶函数的形式,为开发者提供了在不修改原函数源代码的前提下,动态添加新功能的能力。我们将从装饰器的基本概念入手,逐步解析其工作原理,并通过一系列实例展示如何利用装饰器进行日志记录、性能测试、事务处理等常见任务,最终揭示装饰器在提升代码可读性、维护性和功能性方面的独特价值。 ####
|
2月前
|
Python
Python中的`range`函数与负增长
在Python中,`range`函数用于生成整数序列,支持正向和负向增长。本文详细介绍了如何使用`range`生成负增长的整数序列,并提供了多个实际应用示例,如反向遍历列表、生成倒计时和计算递减等差数列的和。通过这些示例,读者可以更好地掌握`range`函数的使用方法。
57 5