国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 卢龙县| 通道| 沅江市| 肥西县| 报价| 新津县| 濉溪县| 仙居县| 靖江市| 铁力市| 祁门县| 汨罗市| 滕州市| 会理县| 巩义市| 同江市| 开远市| 玉环县| 郑州市| 锦屏县| 靖江市| 蒙山县| 南乐县| 芷江| 襄汾县| 鄄城县| 雅安市| 大石桥市| 永嘉县| 新泰市| 来宾市| 青浦区| 长子县| 怀柔区| 疏附县| 北海市| 于都县| 子洲县| 浑源县| 垣曲县| 繁昌县|