【Python】16_匿名函数

简介: 使用 lambda 关键字定义的函数就是匿名函数lambda 参数列表:表达式1、无参数无返回值 def 函数名():   函数代码 lambda:函数代码2、无参数有返回值 def 函数名():    return 1 + 2 lambda: 1 + 23、有参数无返回值 def 函数名(a, b):   print(a, b)     lambda a, b: print(a, b) 4、有参数有返回值 def 函数名(a, b):  return a +

使用 lambda 关键字定义的函数就是匿名函数

lambda 参数列表:表达式

1、无参数无返回值

def 函数名():
函数代码

lambda:函数代码

2、无参数有返回值

def 函数名():
return 1 + 2

lambda: 1 + 2

3、有参数无返回值

def 函数名(a, b):
print(a, b)


lambda a, b: print(a, b)  

4、有参数有返回值

   def 函数名(a, b):
   return a + b
   lambda a, b: a + b  

1、无参无返回值

from typing import Any, Callable

def func1():
print('hello')

(lambda: print('hello lambda'))() # 如果,没有后面的括号就无法执行输出
func1()

2、无参有返回值

def func2():
return 1 + 2

f = lambda: 1 + 2
print(f) # at 0x000002264E25B9D0>
print(f()) # 3

3、有参无返回值

def func3(name):
print(name)

f1 = lambda name: print(name)
f1('hello')

4、有参有返回值

def func4(*args):
return args

f4 = lambda *args: args
print(f4(1, 2, 3, 4, 5))



def my_calc(a, b, func):
"""
进行四则运算
:param a: 第一个数据
:param b: 第二个数据
:param func: 函数,要进行的运算
:return: 运算的结果
"""
print('其他的函数代码...')
num = func(a, b)
print(num)

def add(a, b):
return a + b

调用

my_calc(10, 20, add)
my_calc(10, 20, lambda a, b: a - b) # return 的值不同罢了
my_calc(10, 20, lambda a, b: a * b)
my_calc(10, 20, lambda a, b: a / b)

相关文章
|
消息中间件 Java RocketMQ
SpringBoot整合RocketMQ发送批量消息
SpringBoot整合RocketMQ发送批量消息
|
Java 开发工具 git
Spring源码编译教程
Spring源码编译教程
246 0
|
Shell Android开发 容器
你真了解Android任务栈 Task 与启动模式吗?
你真了解Android任务栈 Task 与启动模式吗?
319 0
|
Java Maven
Maven【5】在IDEA环境中配置和使用Maven
Maven【5】在IDEA环境中配置和使用Maven
345 1
|
11月前
|
分布式计算 Shell MaxCompute
odps测试表及大量数据构建测试
odps测试表及大量数据构建测试
|
12月前
|
人工智能 内存技术
Gemini 2.0 Flash Thinking:谷歌推出实验性多模态推理模型,在快速生成的同时展示详细的思考过程
谷歌推出的实验性推理模型Gemini 2.0 Flash Thinking,展示了详细的思考过程,能够在多个领域快速解决问题,并提供推理路径。本文将详细介绍该模型的功能、技术原理及使用限制。
577 26
Gemini 2.0 Flash Thinking:谷歌推出实验性多模态推理模型,在快速生成的同时展示详细的思考过程
|
小程序 数据安全/隐私保护
Taro@3.x+Vue@3.x+TS开发微信小程序,网络请求封装
在 `src/http` 目录下创建 `request.ts` 文件,并配置 Taro 的网络请求方法 `Taro.request`,支持多种 HTTP 方法并处理数据加密。
573 0
Taro@3.x+Vue@3.x+TS开发微信小程序,网络请求封装
|
机器人
【ROS速成】半小时入门机器人ROS系统简明教程之安装测速(二)
半小时入门机器人ROS系统简明教程之安装测速
583 0
|
机器学习/深度学习 人工智能 算法
强化学习:从游戏到机器人的技术之旅
【6月更文挑战第14天】强化学习是智能体通过与环境互动学习决策策略的方法,已在游戏(如AlphaGo和OpenAI Five)和机器人技术中展现出巨大潜力。在机器人领域,它应用于控制、动作学习和交互沟通,帮助机器人适应复杂环境和任务。尽管面临挑战,但随着技术发展,强化学习有望在更多领域发挥关键作用。
|
SQL JSON 分布式计算
hive get_json_object解析json结果为null咋办?
解决get_json_object解析json结果为null的问题
1141 0

热门文章

最新文章