一、写在前面✨
大家好!我是初心,又见面了!
今天跟大家分享的文章是 玩转Python中的lambda表达式
,希望能帮助到大家!本篇文章收录于 初心 的 Python从入门到精通 专栏。
🏠 个人主页:初心%个人主页
🧑 个人简介:大家好,我是初心,和大家共同努力
💕欢迎大家:这里是CSDN,我记录知识的地方,喜欢的话请三连,有问题请私信😘
💕 有时写信才能表达,平时难以说出口的心声。 —— 薇尔莉特·伊芙嘉登「紫罗兰的永恒花园」✨
二、lambda匿名函数
Python的 lambda 表达式也叫匿名函数,lambda 表达式简化了 函数 定义的书写形式,使代码更为简洁,使函数的定义方式更为直观,更容易理解。
- 基本语法
题目:使用lambda表达式代替函数完成一些简单的功能。
# 求平方 """ >>> square(2) 4 >>> identity(100) 100 >>> triple(3) 9 >>> increment(6) 7 """ square = # 返回本身 identity = # 求3倍数 triple = # 增1 increment = import doctest doctest.testmod()
具体实现:(已省略出现过的代码)
square = lambda x: x * x # 返回本身 identity = lambda x: x # 求3倍数 triple = lambda x: x * 3 # 增1 increment = lambda x: x + 1 import doctest doctest.testmod()
三、泛化函数
简易理解: 泛型函数
就是你定义函数的时候, 能接收万能类型, 在调用时, 会根据传入值本身的类型进行区分处理, 达到某些效果, 好处是代码复用率高, 减少代码冗余, 对面向对象语言中泛型函数概念非常常用.
题目:返回前n个数分别algo计算后的累乘积。
def product(n, algo): """返回 前n个数分别algo计算后的累乘积 n: 正整数 algo: 算法函数 >>> product(3, identity) # 1 * 2 * 3 6 >>> product(5, identity) # 1 * 2 * 3 * 4 * 5 120 >>> product(3, square) # 1^2 * 2^2 * 3^2 36 >>> product(5, square) # 1^2 * 2^2 * 3^2 * 4^2 * 5^2 14400 >>> product(3, increment) # (1+1) * (2+1) * (3+1) 24 >>> product(3, triple) # 1*3 * 2*3 * 3*3 162 """ import doctest doctest.testmod()
具体实现:
multiply_sum = 1 for i in range(1,n+1): multiply_sum*=algo(i) return multiply_sum
四、总结撒花😊
本文主要通过两个例题讲解了Python中如何玩转lambda表达式。😊
✨ 这就是今天要分享给大家的全部内容了,我们下期再见!😊
🏠 本文由初心原创,首发于CSDN博客, 博客主页:初心%🏠
🏠 我在CSDN等你哦!😍