zoukankan      html  css  js  c++  java
  • python 迭代器

    # 迭代器


    # 迭代==再上一个版本的基础上,在更新一个版本

    # 可迭代对象
    # 以直接作用于for循环的数据类型有以下几种:
    # 一类是集合数据类型: 如 list 、tuple、dict、set、str等
    # 一类是generator,包括生成器和带yield的generator function。
    # 这些可以直接作用于for循环的对象统称为可迭代对象: Iterable

    for a in "abc":
    print(a)

    for temp in [11,22,33,44,55]:
    print(temp)


    #

    a = [x for x in range(10)]


    # 生成器
    b = (x for x in range(10)) #迭代器

    # 如判断是否可以迭代
    from collections import Iterator

    isinstance("abc",Iterator) #True
    isinstance([],Iterator) #False
    isinstance({},Iterator) #True
    isinstance(100,Iterator) #False


    # >>> a = [11,22,33,44]
    # >>> next(a)
    # Traceback (most recent call last):
    # File "<stdin>", line 1, in <module>
    # TypeError: 'list' object is not an iterator


    # 迭代器一定一个迭代,生成器一定是迭代器


    # iter()函数   == 用来生成迭代器

    a = [11,22,33]
    type(a) #list
    # 把list转换为可迭代对象
    b = iter(a)
    next(b)
    # 列表占用的空间大,生成器的占用空间小。

  • 相关阅读:
    W3C help
    css值解析
    css中的格式上下文Formatting Context
    css中绝对定位中的left和top属性
    事件模型
    程序员应该如何更有效率
    css的边偏移距离
    css插入框
    css中的whitespace属性
    源码安装nginx 方法二
  • 原文地址:https://www.cnblogs.com/sklhtml/p/9441388.html
Copyright © 2011-2022 走看看