• 匿名函数,三元表达式,列表推导式,字典生成式


    匿名函数

    匿名的意思,就是隐藏自己不让别人知道你的名字。比方说很多人都讨厌的一种人,以匿名的方式打小报告,然后都不知道他是谁。

    匿名函数:与函数有相同的作用域,没有与之绑定的名字意味着引用计数为0,使用一次即被收回,加括号即可运行。

    # 一个有函数名的函数
    def func(x,y):
        return x+y
        
    res = func(1,2)
    print(res)
    
    # 没有函数名的函数 lambda 匿名函数
    print((lambda x,y:x+y)(1,2))
    print((lambda x,y:x+y))
    # lambda 后面的 x,y 就类似于函数的形参
    # x+y 就类似于函数的返回值,1,2 就是实参
    
    # 3
    # 3
    <function <lambda> at 0x0000001FDCC71EA0>
    
    # 如果让其有名字,那匿名函数就没有了意义
    func = lambda x,y:x+y
    func(3,4)
    

    三元表达式

    条件成立返回值 if 条件 else 条件不成立返回值

    x = 10
    y = 20
    
    print(x if x > y else y)
    
    # 20
    

    列表推导式

    列表推导式提供了比较简单的方式来创建列表,它的结构是一个中括号内,放入 表达式,然后是也该 for 语句,然后是0个或多个 for 语句或者 if 语句。

    # 正常 for 循环 需要创建一个空列表
    lis = []
    for i in range(6):
        if i == 4:
            continue
        lis.append(i)
    print(lis)
    
    # 列表推导式
    print([i for i in range(6) if i!=4])
    
    # [0, 1, 2, 3, 5]
    # [0, 1, 2, 3, 5]
    

    字典生成式

    print({i:i*2 for i in range(5)})
    
    {0: 0, 1: 2, 2: 4, 3: 6, 4: 8}
    

    zip() 方法

    key = ['name','age','hobby']
    value = ['jason',18,'tank']
    
    res = zip(key,value)
    print(dict(res))
    
    {'name': 'jason', 'age': 18, 'hobby': 'tank'}
    
    千里之行,始于足下。
  • 相关阅读:
    Python 绘制图表之我见 ---一个java程序员的看法
    机器学习系统设计--1.4
    XUtils3 的 环境搭建与简单使用
    关于SAX
    TensorFlow之Varibale 使用方法
    安装Nvidia k80驱动步骤
    TensorFlow 在android上的Demo(1)
    Python 去剑式
    python编程技巧2
    python语言技巧
  • 原文地址:https://www.cnblogs.com/jincoco/p/11184637.html
Copyright © 2020-2023  润新知