从零开始的Linux运维屌丝之路,资源免费分享平台   运维人员首选:简单、易用、高效、安全、稳定、社区活跃的开源软件

24、Python 匿名函数

发布:蔺要红04-25分类: Python

 
lambda
lambda x,y:x*y  #声明一个函数
 
# -*- coding: UTF-8 -*-
def calc(x,y):
    if x < y:
        return x*y
    else:
        return x/y
print(lambda x,y:x*y)
func = lambda x,y:x*y  #匿名函数,不支持复杂的逻辑判断、
func = lambda x,y:x*y if x<y else x/y  #也就能实现个三元运算、
print(calc(3,8))
print(func(3,8))

E:\Python\学习\venv\Scripts\python.exe E:/整理版笔记/python/函数/匿名函数.py
<function <lambda> at 0x0000000000B35730>
24
24
 
匿名函数主要和其他方法搭配只用


需求:把列表里的每个元素相乘
 

01:不使用函数

# -*- coding: UTF-8 -*-
#匿名函数主要和其他方法搭配只用
data = list(range(10))
print(data)
for index,i in enumerate(data):
    data[index] = i*i
print(data)

E:\Python\学习\venv\Scripts\python.exe E:/整理版笔记/python/函数/匿名函数.py
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

02:使用函数
 
# -*- coding: UTF-8 -*-
#匿名函数主要和其他方法搭配只用
data = list(range(10))
def f2(n):
    return n*n
print(data)
print(list(map(f2,data)))

E:\Python\学习\venv\Scripts\python.exe E:/整理版笔记/python/函数/匿名函数.py
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
 
03:使用匿名函数
 
# -*- coding: UTF-8 -*-
#匿名函数主要和其他方法搭配只用
data = list(range(10))
print(data)
print(list(map(lambda x:x*x,data)))  #匿名函数主要和其他方法搭配只用/用完一次基本不会再用

E:\Python\学习\venv\Scripts\python.exe E:/整理版笔记/python/函数/匿名函数.py
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
 
温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,如有侵权我会在24小时之内删除!

欢迎使用手机扫描访问本站