zoukankan      html  css  js  c++  java
  • python小知识,列表推导式

    使用列表推导式可以快速生成一个列表,或者根据某个列表生成满足指定需求的列表。

    1、生成指定范围的数值列表,语法格式如下:

    list=[Expression for var in range if condition]

      list:表示生成列表的名称

      Expression :表达式,用于计算列表的元素

      var:循环变量

      range:采用range()函数生成的range对象

      condition:条件表达式,用于指定筛选条件

    示例:

    """
    author:锦衣大镖客
    create:2020年12月19日
    功能:列表推导式试验
    """
    lis=[i for i in range(10)]
    print("lis:",lis)
    #将lis列表中的数字全部翻10倍
    
    lis_fb=[i*10 for i in lis]
    print("lis_fb:",lis_fb)
    
    
    #配合随机数 random模块使用
    import random
    #取10位随机数生成一个列表
    lis_random=[random.randint(1,1000) for i in range(10)]
    print("lis_random:",lis_random)
    
    #条件筛选组合成新列表
    lis_if=[x for x in lis_random if x>200]
    print("lis_if:",lis_if)
    
    #列表推导式建立二维列表
    list_tow=[[i for i in range(3)] for j in range(5)]
    print("lis_tow:",list_tow)

    执行结果:

    推导式生成元组对象:

    #使用推导式建立元组
    tuple_random=(x for x in range(10))
    print("tuple_random:",tuple_random)
    #可以在转换后使用for进行遍历,也可以使用__next__方法进行遍历
    print(tuple_random.__next__()) #取出数值
    print("tuple_random的类型为:",type(tuple_random))
    #需要使用tuple进行类型转换
    # print(tuple(tuple_random))
    for i in tuple_random:
        print("shuchu",i)
    print(tuple(tuple_random))
    #依照上述示例可以看出,无论通过哪种方法输出,如果再想使用该生成器对象,的补习重新创建一个生成器对象,因为遍历后原生成器对象已经不存在了

    执行结果:

  • 相关阅读:
    动态类(类工厂)总结
    m3u8字段意义解析
    libevent+bufferevent总结
    g++编译总结
    ffplay 参数说明分享
    PHP——最新号码归属地数据库
    PHP——汉字完美转为ASCII码
    PHP——json_encode转码保留中文
    workerman——报错
    PHP——封装Curl请求方法支持POST | DELETE | GET | PUT 等
  • 原文地址:https://www.cnblogs.com/jinbiaobowen/p/14159935.html
Copyright © 2011-2022 走看看