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
  • 相关阅读:
    Jquery+ajax+bootstrap
    Js+Jquery
    css(2)+JS
    css
    mysql 高级
    Git
    Redis
    Nginx
    python爬虫 | 一条高效的学习路径
    拉勾网爬取全国python职位并数据分析薪资,工作经验,学历等信息
  • 原文地址:https://www.cnblogs.com/frankyou/p/5733904.html
Copyright © 2011-2022 走看看