• day14.2_三元表达式、列表生成式


    一、三元表达式

    print(条件成立时的返回值 if 条件 else 条件不成立时的返回值)

    x=1
    y=3
    print(y if x>y else x)

    二、列表生成式

    l=[i**3 for i in range(3)]
    print(l)

    三、字典生成式

    s="@@"
    l=[1,2,3]
    res=zip(s,l)  # <zip object at 0x0000021F3DC6CB48>  
    print(list(res))         #元组形式的列表(一一对应,多余的不会组成元组)
    print(type(zip(s,l)))  #<class 'zip'>

    生成字典

    keys=["name","age","sex"]
    values=["Namy",18,"female"]
    res=zip(keys,values)
    print(res)    # <zip object at 0x000001BE6751CC08>
    print(list(res))   # [('name', 'Namy'), ('age', 18), ('sex', 'female')]
    d={}
    for k,v in zip(keys,values):
        d[k]=v
    print(d)   # {'name': 'Namy', 'age': 18, 'sex': 'female'}
    d={k:v for k,v in zip(keys,values)}
    print(d)

    四、生成器表达式

    g=(i for i in range(6))
    print(g)   #<generator object <genexpr> at 0x000001A808412C50>
    print(next(g))

    统计文件中某行的字符长度最多

    with open("a.txt",encoding="utf-8") as f:
        nums=(len(line) for line in f)
        print(max(nums))

    例子:

    l=["sb%s" %i for i in range(99)]
    pirnt(l)     # 一次性生成99个sb
    
    g=("sb%s"%i for i in range(99))
    print(g)   #此时的g是一个生成器,并没有直接将99个值全部一次性取出
    print(next(g))   #需要一个取出一个即可
  • 相关阅读:
    websocket的理解及实例应用
    laravel框架cookie应用到中间件的理解
    PHP多机实现session共享
    mysql中exists的详细说明
    window环境下安装pear
    php 进程管理及操作
    PHP设计模式之职责链模式
    PHP设计模式之备忘录模式
    PHP设计模式之装饰模式
    PHP设计模式之策略模式
  • 原文地址:https://www.cnblogs.com/Smart1san/p/9178306.html
Copyright © 2020-2023  润新知