zoukankan      html  css  js  c++  java
  • Python生成器、迭代器、可迭代对象

    把一个列表[]改成()就创建了一个生成器:generator,generator保存的是算法。

    可以用于for循环的数据类型:
    1、集合类型:list tuple dict set str
    2、generator

    可以直接作用于for循环的对象统称为:可迭代对象(Iterable)

    from collections import Iterable
    print(isinstance([],Iterable))
    print(isinstance({},Iterable))
    print(isinstance((x for x in range(10)),Iterable))
    print(isinstance(100, Iterable))

    结果:

    True
    True
    True
    False

    可以被next调用并不断返回下一个值的对象称为:迭代器(Iterator)

    from collections import Iterator
    print(isinstance([],Iterator))
    print(isinstance({},Iterator))
    print(isinstance((x for x in range(10)),Iterator))
    print(isinstance(100, Iterator))

    结果:

    from collections import Iterator
    print(isinstance([],Iterator))
    print(isinstance({},Iterator))
    print(isinstance((x for x in range(10)),Iterator))
    print(isinstance(100, Iterator))

     listdictstrIterable变成Iterator可以使用iter()函数:

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    from collections import Iterator
    print(isinstance(iter([]),Iterator))
    print(isinstance(iter({}),Iterator))
    print(isinstance((x for x in range(10)),Iterator))
    print(isinstance(iter('abc'), Iterator))

    显示结果:

    True
    True
    True
    True
  • 相关阅读:
    toj 2975 Encription
    poj 1797 Heavy Transportation
    toj 2971 Rotating Numbers
    zoj 2281 Way to Freedom
    toj 2483 Nasty Hacks
    toj 2972 MOVING DHAKA
    toj 2696 Collecting Beepers
    toj 2970 Hackle Number
    toj 2485 Card Tric
    js页面定位,相关几个属性
  • 原文地址:https://www.cnblogs.com/frankyou/p/5733904.html
Copyright © 2011-2022 走看看