【Python】高阶函数

本文介绍了Python中的高阶函数,包括abs()、round()、map()、reduce()和filter()。通过实例展示了如何使用这些函数进行数值处理、列表操作及条件过滤。同时,文章还探讨了函数作为参数的高阶写法,如sum_num函数的运用,以及map()、reduce()和filter()在实际编程中的具体应用。
摘要由CSDN通过智能技术生成

一、高阶函数

  • abs():可完成对数字取绝对值的运算。
  • round():可完成对数字四舍五入的运算。
  • map(func, list):参数一:函数名,参数二:列表。将传入的函数变量作用到列表里的每个元素中,并将结果组成迭代器返回。
  • reduce(func, list):每次func计算的结果继续和list中的下一个元素做计算。
  • filter(func, list):该函数用于过滤掉不符合条件的元素,返回filter对象,可以list()转换为列表。

二、函数的高阶写法

函数高阶写法的初步思想是让函数的参数传入函数。

def sum_num(a, b, f):
    return f(a) + f(b)
result = sum_num(-1, 2, abs)
print(result)

map()函数使用例子:

#把列表里的每个元素的值做平方运算
list1 = [1, 2, 3, 4, 5]

def func(x)
    return x ** 2

result = map(func, list1)
print(list(result))#转换为列表

reduce()函数使用例子:

#导入模块
#累加列表里的值
import functools
list1 = [1, 2, 3, 4, 5]
def func(a, b):
    return a + b
result =  functools.reduce(func, list1)
print(result)

filter()函数使用例子:

#过滤列表里有余数的值
list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

def func(x):
    return x % 2 == 0
result = filter(func, list1)
print(list(result))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

SamRol

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

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

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

打赏作者

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

抵扣说明:

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

余额充值