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))
    #依照上述示例可以看出,无论通过哪种方法输出,如果再想使用该生成器对象,的补习重新创建一个生成器对象,因为遍历后原生成器对象已经不存在了

    执行结果:

  • 相关阅读:
    VUE-cli使用
    2017/04/09王晨分享课大纲
    CommonJS模块和ES6模块的区别
    css常见布局方式
    从输入 URL 到页面加载完成的过程中都发生了什么
    函数节流与防抖的实现
    JavaScript表单
    jQuery方法实现
    移动端去除横向滚动条
    请假时碰到法定假期,实际请假几天?
  • 原文地址:https://www.cnblogs.com/jinbiaobowen/p/14159935.html
Copyright © 2011-2022 走看看