一、解析式
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異常
python學習7-解析式與迭代器
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
Python3高级核心技术97讲
wy53780
2020-04-23 15:37:39
python網絡爬蟲
aabcdqt
2019-05-06 20:35:05
Python與家國天下
豌豆花下貓
2019-02-24 22:22:40
seaborn 安裝成功 + ImportError: DLL load failed: 找不到指定的模塊 問題解決
耗子
2019-02-24 19:55:04
使用 Sphinx 撰寫技術文檔並生成 PDF 總結
qiwihui
2019-02-24 16:25:14
Python實現二叉樹相關算法
backbp
2019-02-24 15:35:06
Ubuntu16.04安裝Python3.7及其pip3並切換爲默認版本
ipromise
2019-02-24 14:15:00
Python2+Selenium入門05-關於WebElement類
白雪
2019-02-24 13:45:04
Python——數據類型
陳晨工程師
2019-02-24 13:43:55
Python 操作PDF庫介紹之PDFMiner
iCloudEnd
2019-02-24 13:39:59
Python reportlab 之 draw函數介紹
iCloudEnd
2019-02-24 13:39:59
Python reportlab之pdfgen 介紹(含代碼)
iCloudEnd
2019-02-24 13:39:59
Python手繪圖瞭解一下!
python攻城獅
2019-02-24 13:34:06
Python繪製圖表【matplotlib】
流域哈哈
2019-02-24 13:20:58
Python2+Selenium入門04-關於WebDriver類
白雪
2019-02-24 12:45:06