一、語(yǔ)法糖的概念


“語(yǔ)法糖”,從字面上看應(yīng)該是一種語(yǔ)法?!疤恰保梢岳斫鉃楹?jiǎn)單、簡(jiǎn)潔。其實(shí)我們也已經(jīng)意識(shí)到,沒(méi)有這些被稱為“語(yǔ)法糖”的語(yǔ)法,我們也能實(shí)現(xiàn)相應(yīng)的功能,而 “語(yǔ)法糖”使我們可以更加簡(jiǎn)潔、快速的實(shí)現(xiàn)這些功能。 只是Python解釋器會(huì)把這些特定格式的語(yǔ)法翻譯成原本那樣復(fù)雜的代碼邏輯而已,沒(méi)有什么太高深的東西。

到目前為止,我們使用和介紹過(guò)的語(yǔ)法糖有:

  • if...else 三元表達(dá)式: 可以簡(jiǎn)化分支判斷語(yǔ)句,如 x = y.lower() if isinstance(y, str) else y

  • with語(yǔ)句: 用于文件操作時(shí),可以幫我們自動(dòng)關(guān)閉文件對(duì)象,使代碼變得簡(jiǎn)潔;

  • 裝飾器: 可以在不改變函數(shù)代碼及函數(shù)調(diào)用方式的前提下,為函數(shù)增加增強(qiáng)性功能;

這里會(huì)再介紹兩個(gè):

  • 列表生成式: 用于生成一個(gè)新的列表

  • 生成器: 用于“惰性”地生成一個(gè)無(wú)限序列

網(wǎng)友評(píng)論