生成器是一种特殊的迭代器,也可以说其父类型是迭代器

  1、迭代器其实也有很多点要清楚,这里先不做赘述

  2、要清楚,迭代器调用iter()返回的是自身

 1 def func(s, e):
 2     """
 3     生成器函数
 4     :param s:起始值
 5     :param e: 末值
 6     :return:
 7     """
 8     num = s
 9     while num < e:
10         if num % 7 == 0 or "7" in str(num):
11             yield num
12         num += 1
13 
14 
15 if __name__ == '__main__':
16     # 验证生成器是否是迭代器
17     res = func(0, 20)
18     print(type(res))
19     print(iter(res) is res)

output: 

  <class 'generator'>
  True

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。