栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【Python | 匿名函数的了解与使用】

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Python | 匿名函数的了解与使用】

匿名函数
  • 匿名函数在创建时不需要命名,所以叫匿名函数。
  • 匿名函数有个限制,就是只能有一个表达式,不用写return,返回值就是该表达式的结果
# 普通函数
def add(a, b):
    return a+b
print(add(1, 3))

# 匿名函数
add2 = lambda x, y: x + y
print(add2(1, 3))
4
4

Process finished with exit code 0
# 匿名函数
add2 = lambda *x: sum(x)
print(add2(1, 3, 6, 5))
15

Process finished with exit code 0
常见使用场景
  • 使用匿名函数来返回两个数之间的最大值
comp = lambda x, y: x if x>y else y
# comp = lambda x, y: max(x, y)
# comp = lambda x, y: x > y and x or y
print(f"最大值:{comp(2, 3)}")
最大值:3

Process finished with exit code 0
  • 使用匿名函数将传入浮点数保留两位小数
f = lambda x: float('%2f'%x)
# f = lambda x: round(x, 2)
print(f(3.466544))
3.47

Process finished with exit code 0
  • 排序借助匿名函数
# sorted => 内建函数 => 排序
# sorted(要排序的对象, key=函数)
mylist = [-1, 10, 8, -9, 6, 3]
print(sorted(mylist))
[-9, -1, 3, 6, 8, 10]

Process finished with exit code 0
# 按绝对值进行排序 => [-1, 3, 6, 8, -9, 10]
print(sorted(mylist, key=lambda x: x if x>0 else -x))

# 不区分大小写排序
mystr = "AsdBcmG"
# print(sorted(mystr, key=lambda x: x.lower() if x.isupper else x))
print(sorted(mystr, key=lambda x: x.lower()))
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/869965.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号