基础学习之第十四天(列表推导式和生成器表达式和内置函数)

迭代器的优点:
  1.节省内存
  2.惰性机制
  3.单向,不可逆
如何判断它是否是可迭代对象和迭代器

  可迭代对象->迭代器

  可迭代对象__iter__():就会变成迭代器
    1.'__iter__'in dir(obj):True或Flase,返回True就代表他是可迭代对象
    2.引入模块
      from collections import Iterator(迭代器)
      print(isinstance(参数名,Iterator)
      from collections import Iterable(迭代对象)
      print(isinstance(参数名,Itera)ble
  生成器:
    自己用python代码写的迭代器就是生成器
    生成器本身就是迭代器
生成器的表达式和列表推倒式
  1.列表推导式
    [变量(加工后的变量) for 变量 in iterable(迭代对象)] # 循环模式
    [变量(加工后的变量) for 变量 in iterable if 条件] # 筛选模式
  2.生成器表达式:和列表表达式一样只是括号不一样

    优点:1.节省代码
    缺点:不好排错
    整体:凡是用列表推导式构造的,用其它方式也可以,非常复杂的列表,列表推导式是构造不出来的

内置函数

猜你喜欢

转载自www.cnblogs.com/chunqiuyu/p/9203819.html