生成器复习

Posted my-python-road

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了生成器复习相关的知识,希望对你有一定的参考价值。

列表生成式
[x*2 for x in range(10)]

生成器(generator object)

1,(x*2 for in in range(10)) >>>generator object

2,def f():
yield

f()>>>> generator object
生成器的方法
1> next(f()) >>>计算出一个值
注意:生成器再创建时,已经决定了能计算出的值的个数。调用next()的次数超个这个值就会包StopIteration
遍历所有元素可以通过FOR 循环
for i in [1,2,3]:
print(i)
for 循环内部做了三件事:
1, 调用对象的iter()方法,返回一个迭代器对象
2, while:
        try:
  i = netex(list_Itertor
        except StopIteration: 3 朴拙异常
          break

  2> send() 
      f().send(None) # 等同于next(f())

      
迭代器
满足迭代器协议:
    1,内部有next 方法
2,内部有iter()方法

    li = [1,2,3] :Iterble (内部有iter方法)
    >>>i = iter(li).list_Itertor
接着可以使用next(i)
time
time.time()
  time.strtime()
time.gmtime(): >>>UTC时间
time.localtime(): >>本地时间
time.ctime()
datetime
detetime.datetime.now()

random

chr()
  





以上是关于生成器复习的主要内容,如果未能解决你的问题,请参考以下文章

迭代器和生成器总结复习

迭代器和生成器复习

列表生成式的复习以及生成器的练习, 杨辉三角实例(非常巧妙)

复习迭代器 VS 生成器

Python_迭代器和生成器的复习_38

[复习]多项式和生成函数相关内容