python學習7-解析式與迭代器

一、解析式
1、列表解析:代碼簡介且效率稍高,可以有多個for語句,相當於逐層嵌套
[exper for x in interator]
[exper for x in interator if cond if cond ....]
2、if表達式
x if cond else y
3、生成器解析:列表解析的中括號變爲小括號就是生成器解析,返回是生成器。
不會佔用內存,當用next調用時計算表達式。
當明確需要下標訪問,用列表解析,只需要對結果迭代時,優先使用生成器解析。
4、集合解析
用大括號
5、字典解析
二、迭代器與可迭代對象
有_iter_的對象叫可迭代對象,迭代器是可迭代對象,有_next_方法的可迭代對象叫迭代器
1、iter函數可以把可迭代對象轉化爲迭代器
2、使用next函數時,會返回當前元素,並且把指針指向下個元素,當沒有時,stoplteration異常
3、for in 循環對於可迭代對象,首先調用iter方法轉化爲可迭代對象,然後不斷調用next方法,直到stoplteration異常
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章