python--lambda函数融合BIF之Filter、Map(十四)

python--lambda函数融合BIF之Filter、Map(十四)


# lambda函数
# lambda函数创建,lambda函数没有函数名称,类似java中的匿名函数
g= lambda x:2+x #  :冒号左边的x是形参 ,:冒号右边的是函数体
print(g(3)) # 结果为5


# 内置函数之过滤器
'''
filter(func, seq) 
该函数的目的是提取出seq中能使func为true的元素序列。
func函数是一个布尔函数,filter()函数调用这个函数一次作用于seq中的每一个元素,筛选出符合条件的元素,并以列表的形式返回。 
'''
# 假如有个列表,列表中有几个数字,现在我想从这些数字中,选出即能被2整除又能被3整除的数。
nums = [2,3,4,5,6,7,8,9]
def num_fun(x):
    return x % 2 ==0 and x % 3 == 0
li = (filter(num_fun,nums)) # 将filter过滤后的数据赋值给变量li  filter的第一个参数num_fun是过滤条件,nums是需要过滤的数据
print(list(li))

# 过滤lambda 函数
c = list(filter(lambda x : x % 2,range(10)))
print(c)

# map
'''
map()函数  
map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。  
'''
# 例如将range中0到9的元素,依次乘以2,得到一个新的list并返回。
b = list(map(lambda x : x % 2,range(10)))
print(b)

python--lambda函数(十四)

猜你喜欢

转载自blog.csdn.net/m0_38039437/article/details/80337586