wordpress主机怎么建站,阜阳建设网站,深圳网站建设-龙华信科,wordpress网站如何清理jsday42 高阶函数
学习日期#xff1a;20241019
学习目标#xff1a;函数#xfe63;- 55 高阶函数#xff1a;函数对象与函数调用的用法区别
学习笔记#xff1a;
函数对象和函数调用 # 函数对象和函数调用
def foo():print(foo display)# 函数对象
a foo
print(a) # 20241019
学习目标函数- 55 高阶函数函数对象与函数调用的用法区别
学习笔记
函数对象和函数调用 # 函数对象和函数调用
def foo():print(foo display)# 函数对象
a foo
print(a) # function foo at 0x0000021E33CA5E40
# 函数调用
a() # foo display
高阶函数 map函数 # map高阶函数
# 方式一循环指定范围的值计算自身的两倍值
def add(number):return (numbernumber)for i in map(add,range(5)):print(i)# 执行结果 0 2 4 6 8
# 执行过程
# range(5)-- 0 1 2 3 4
# map(add,range(5))--0 2 4 6 8range中的值先作为add函数参数调用add函数返回值再输出# 方式二循环指定范围的值计算自身的两倍值并转换为列表
print(list(map(lambda x:xx,range(5)))) # [0, 2, 4, 6, 8]
filter函数 # filter 高阶函数
# lambda x:x0 如果x0返回true否则返回false不输出
# filter(lambda x:x0,(-2,-1,1,2))
for i in filter(lambda x:x0,(-2,-1,1,2)):print(i)
# 执行结果--1 2
reduce函数 # reduce 高阶函数
from functools import reduce
print(reduce(lambda x,y:xy,[1,2,3,4,5])) # 15
偏函数 # 偏函数
# 十进制 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
# 十六进制 0 1 2 3 4 5 6 7 8 9 A B C D E F 10
# 使用偏函数生成一个十六进制函数
from functools import partial
int_16 partial(int,base16)print(int_16(0f)) # 15# 使用偏函数生成一个可直接调用的open函数
wopenpartial(open,modew,encodingutf-8)
wopen(a.txt) # 等同于 open(a.txt,modew,encodingutf-8)
总结
函数对象本身是可以作为参数或返回值函数参数是函数自身的标签可以赋值给其他对象函数参数如果使用了其他函数对象一般称为高阶函数系统内置的高阶函数有map(),filter(),reduce()常用的偏函数可以固定函数的参数形成更方便的自定义函数