zoukankan      html  css  js  c++  java
  • 12 Python学习之列表推导式和生成器表达式

    列表推导式

    列表推导式:用一行代码构建一个比较复杂有规律的列表。本质是一个可迭代对象

    循环模式:

    语法:

    [变量 for 变量 in 可迭代对象]

    例1:

    li = [i for i in range(10)]
    print(li)
    

    筛选模式:

    语法:

    [变量 for 变量 in 可迭代对象 if 条件]

    例1:

    li = [i for i in range(10) if i % 2 == 0]
    print(li)
    

    多层循环嵌套的列表推导式

    例1:

    找出列表中名字带有两个字母'e'的名字

    li = [['Tom', 'Billy', 'Jefferson', 'Andrew', 'Steven'], ['Alice', 'Jill', 'Ana', 'Sherry', 'Jennifer']]
    
    print([name for i in li for name in i if name.count('e') == 2])
    

    列表生成器

    列表生成器与推导式的写法一样,只是将列表推导式的方括号换成圆括号,本质是一个迭代器

    例1:

    obj = (i for i in range(1, 11))		# 生成器
    print(type(obj))
    
    for _ in range(10):
        print(next(obj))				# 输出迭代器中的内容
    
  • 相关阅读:
    C语言面试题——寻找错误
    C语言的声明解释的在线工具——cdecl
    C语言面试题——指针运算
    const 指针与指向const的指针
    C语言复杂声明解释
    poj1248
    poj1750
    poj1484
    poj1853
    poj1575
  • 原文地址:https://www.cnblogs.com/zcf-blog/p/13427871.html
Copyright © 2011-2022 走看看