python入门之使用内置函数举例

本文介绍了Python中的四个高阶函数:绝对值函数abs(),用于计算数值的绝对值;map()函数,将指定函数应用到列表的每个元素上并返回迭代器;reduce()函数,通过累积计算将列表元素融合成单一值;以及filter()函数,用于过滤列表中的元素,返回满足条件的元素迭代器。示例代码展示了这些函数的使用方法和效果。


一、绝对值函数abs()

# 1.
fun1 = lambda a, b: abs(a) + abs(b)
print(fun1(-3, 5.2))


# 2.
def fun2(a, b, fn):  # 高阶函数范例,将函数abs作为参数传入fun2中
    return fn(a) + fn(b)


print(fun2(-3, 5.2, abs))

# 3.进一步简化
fun3 = lambda a, b, fn: fn(a) + fn(b)
print(fun3(-3, 5.2, abs))
print(fun3(1.2, 1.6, round))

二、map()

"""
内置高阶函数
"""


# map(func, lst) -- 将传入的函数变量func作⽤用到lst变量的每个元素中,并将结果返回一个迭代器
def fun1(x):
    return x ** 2


list1 = [1, 2, 3, 4, 5]

result = map(fun1, list1)

print(result)
print(list(result))  # 数据类型转换为list

三、reduce()

import functools

list1 = [10, 20, 30, 40]
list2 = [1, 2, 3, 4]


def func(a, b):
    return a + b


def func01(a, b):
    return a * b


# reduce(func, list) -- func必须有两个参数每次func计算结果和序列的下一个元素做累计计算
result = functools.reduce(func, list1)
print(result)
result01 = functools.reduce(func01, list2)
print(result01)

四、filter()

list1 = [1, 2, 24, 23, 45, 26]


# 1.filter(func, lst) -- func 函数是条件,filter函数把满足条件的元素过滤出来,组成result
def func(x):
    return x % 2 == 0


def func02(x):
    return x > 20


result = filter(func, list1)
print(result)
print(list(result))

result02 = filter(func02, list1)
print(result02)
print(list(result02))

# 2.更加简便的写法--推导式
list2 = [i for i in list1 if i % 2 == 0]
print(list2)

func03 = lambda x: x > 20
result03 = filter(func03, list1)
print(list(result03))

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

二十四桥_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值