python迭代器和生成器
1、迭代器
這里用字典示例
while True 屬于無(wú)限循環(huán),因字典元素有限,所以用try做異常處理
dict1 = {
'name':'laowang',
'age':18,
'high':180
}
iterator = dict1.__iter__()
while True:
try:
res = iterator.__next__()
except:
break
else:
print(res,dict1[res]
結(jié)果:
name laowang
age 18
high 180
2、生成器
先看一下列表推導(dǎo)式
list1 = [i for i in range(1,10)]
# 結(jié)果
[1, 2, 3, 4, 5, 6, 7, 8, 9]
生成器
list1 = (i for i in range(1,10))
# 結(jié)果
generator object genexpr> at 0x7fa491ea3410>
# generator 生成器
#生成器函數(shù)
def func1():
for i in range(1,10):
yield i
res = func1() #生成器對(duì)象
for i in res:
print(i)
總結(jié)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
您可能感興趣的文章:- Python基礎(chǔ)語(yǔ)法之容器詳解
- python學(xué)習(xí)之可迭代對(duì)象、迭代器、生成器
- python可迭代對(duì)象去重實(shí)例
- Python編程如何在遞歸函數(shù)中使用迭代器
- 穩(wěn)扎穩(wěn)打?qū)WPython之容器 可迭代對(duì)象 迭代器 生成器專(zhuān)題講解