国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

淺談python迭代器

2020-01-04 16:29:00
字體:
供稿:網(wǎng)友

1、yield,將函數(shù)變?yōu)?generator (生成器)

例如:斐波那契數(shù)列

def fib(num):  a, b, c = 1, 0, 1      while a <= num:    yield c    b, c = c, b + c    a += 1for n in fib(10):  print(n, end=' ')# 1 1 2 3 5 8 13 21 34 55

2、Iterable

所有可以使用for循環(huán)的對象,統(tǒng)稱為 Iterable (可迭代)

from collections import Iterable, Iteratorprint(isinstance(fib(10), Iterable))print(isinstance(range(10), Iterable))# True# True

3、Iterator

可以使用next() <__next__()> 函數(shù)調(diào)用并且不斷返回下一個值的對象成為 Iterator (迭代器),表示一個惰性計算的序列。

list, dict, str是Iterable,不是Iterator:

from collections import Iteratorprint(isinstance(list(), Iterator))# False

但是可以通過iter()函數(shù)將其變?yōu)镮terator:

print(isinstance(iter(list()), Iterator))# True

總結(jié)

以上就是本文關(guān)于淺談python迭代器的全部內(nèi)容,希望對大家有所幫助。有什么問題可以隨時留言,小編會及時回復(fù)大家的。感謝朋友們對本站的支持!


注:相關(guān)教程知識閱讀請移步到python教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 大冶市| 灵石县| 修文县| 留坝县| 池州市| 商城县| 聊城市| 靖江市| 罗山县| 延寿县| 吉林省| 丰镇市| 夏津县| 宽甸| 台南县| 微博| 玛曲县| 湖北省| 晴隆县| 涡阳县| 兰考县| 大洼县| 东阿县| 上杭县| 湄潭县| 双江| 辛集市| 青阳县| 凤台县| 南和县| 承德县| 桐柏县| 公主岭市| 台湾省| 陆良县| 柞水县| 屯门区| 靖西县| 仙居县| 南皮县| 泸水县|