• 匿名函数


     1 '''
     2 概念:不使用def这个关键字定义函数,用lambda关键字来创建匿名函数。
     3 特点:
     4 1、lambda 只是一个表达式,函数体比def简单的多
     5 2、lambda本质是表达式,而不是代码块,仅仅只能封装最简单的逻辑
     6 3、lambda函数有自己的命名空间,并且不能修改除自己的参数列表以外的
     7 参数或全局命名空间的参数
     8 
     9 格式:lambda [参数1[,参数2…参数n ]]: 表达式
    10 注意:表达式:只是一条简单的语句,不能包含循环,也不能有return,
    11 也不能有yield,但允许有简单的if语句。如果表达式为元组,
    12 用小括号括起来。
    13 '''
    14 # 定义一个函数,返回传入的实参的和 (形参有两个)
    15 def func1(num1, num2):
    16     return num1+num2
    17 print(func1(1,2))
    18 
    19 # 匿名函数
    20 a = lambda num1,num2 : num2+num1
    21 print(a(2,3))
    22 
    23 # lambda中使用if语句  if-else
    24 # 语法格式:
    25 # lambda [参数1[,参数2…参数n ]]: 结论1 if 表达式 else 结论2
    26 # 当表达式为真时,取结论1;当表达式为假时,取结论2
    27 '''
    28 # 结论1 if 表达式 else 结论2
    29 a = 20
    30 if True:
    31     a = 30  # 结论1
    32 else:
    33     a = 40   # 结论2
    34 '''
    35 
    36 # num   num<0  num = 1  num>=0  num
    37 def re(num):
    38     if num < 0:
    39         num = 1
    40     return num
    41 print(re(-2))
    42 print(re(100))
    43 
    44 b = lambda num : 1 if num<0 else num
    45 print(b(200))
    46 print(b(-100))
    47 
    48 
    49 # 一般匿名函数只执行一次,用完就结束
    50 print((lambda num : 1 if num<0 else num)(111))
    51 print((lambda num : 1 if num<0 else num)(-111))
  • 相关阅读:
    Game of War
    Unreal Engine 4 性能优化工具(Profiler Tool)
    触屏设备上的多点触碰检测C++代码实现
    独立游戏设计流程:从概念到写码的13个步骤
    ue4 多相机分屏与小地图效果实现教程
    Unreal Engine 4 笔记 2
    3dsMax模型转UE4
    以《西游记》为例 详解游戏设计归纳演绎法
    假期关于产品-设计-逻辑-市场-团队思考节选30篇
    Unreal Engine 4 笔记
  • 原文地址:https://www.cnblogs.com/BKY88888888/p/11265921.html
Copyright © 2020-2023  润新知