Python中的簡(jiǎn)寫(xiě)操作(for、if簡(jiǎn)寫(xiě)、匿名函數(shù))
Python簡(jiǎn)寫(xiě)操作(for、if簡(jiǎn)寫(xiě)、匿名函數(shù))
使用jupyter之后感覺(jué)每行代碼都有種寸土寸金的感覺(jué),所以今天總結(jié)一下常用的簡(jiǎn)寫(xiě)代碼的方法:
1 for 簡(jiǎn)寫(xiě)
先舉一個(gè)例子:
y = [1,2,3,4,5,6] [(i*2) for i in y ]
會(huì)輸出 [2, 4, 6, 8, 10, 12]
1.1 一層for循環(huán)簡(jiǎn)寫(xiě):
一層 for 循環(huán)的簡(jiǎn)寫(xiě)格式是:(注意有中括號(hào))
- [ 對(duì)i的操作 for i in 列表 ]
它相當(dāng)于:
- for i in 列表:
- 對(duì)i的操作
1.2 兩層for循環(huán)
兩層的for循環(huán)就是:
- [對(duì)i的操作 for 單個(gè)元素 in 列表 for i in 單個(gè)元素]
舉個(gè)簡(jiǎn)單的例子:
y_list = ['assss','dvv'] [print(i) for y in y_list for i in y]
得到結(jié)果:a s s s s d v v
他類似于:
y_list = ['assss','dvv'] for y in y_list: ? ? for i in y: ? ? ? ? print(i)?
2 if 簡(jiǎn)寫(xiě)
格式是:
- True的邏輯 if 條件 else False的邏輯
舉個(gè)例子:
y = 0 x = y+3 if y > 3 else y-1
此時(shí) x = -1
因?yàn)?y = 0 ,所以判斷 y>3 時(shí)執(zhí)行了 False的邏輯:y-1,所以x的值為 -1
2.1 for 與 if 的結(jié)合怎么簡(jiǎn)寫(xiě)
舉個(gè)栗子:
x = [1,2,3,4,5,6,7] [print(i) for i in x if i > 3 ]
它會(huì)輸出:4 5 6 7
注:使用簡(jiǎn)寫(xiě)的方式無(wú)法對(duì) if 判斷為 False 的對(duì)象執(zhí)行操作。
所以它的模板是:
- [判斷為T(mén)rue的i的操作 for i in 列表 if i的判斷 ]
3 匿名函數(shù)lambda
匿名函數(shù)的使用方法是:
- lambda 參數(shù): 表達(dá)式
舉個(gè)栗子:
x = 3 (lambda k: k+3)(x)
輸出 6
這是一個(gè)比較簡(jiǎn)單的匿名函數(shù)表達(dá)式,一般匿名函數(shù)會(huì)結(jié)合很多其他函數(shù),作為傳遞參數(shù)的作用。比如:
比如:map()配合匿名函數(shù)
map(函數(shù)名,列表) 這相當(dāng)于對(duì)列表中的每個(gè)元素執(zhí)行這個(gè)函數(shù)的操作,比如:
list(map(lambda x: x * 2, [1, 2, 3, 4, 5]))
輸出: [2, 4, 6, 8, 10]
Python代碼if else簡(jiǎn)寫(xiě)
python是代碼執(zhí)行是逐行執(zhí)行的,行數(shù)越少代碼執(zhí)行的效率越高,優(yōu)化語(yǔ)句的寫(xiě)法可以提高代碼的可讀性,使得代碼根據(jù)簡(jiǎn)潔。例如一個(gè)常用判斷賦值語(yǔ)句通常我們會(huì)寫(xiě)到4行代碼。
if b>0: ? ? a=b else: ? ? a=0
其實(shí)可以用一行代碼就可以搞定;
#如果b的值大于0,將b直接賦值給a,否則將a設(shè)置為0 a=b if b>0 else 0
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
你應(yīng)該知道的Python3.6、3.7、3.8新特性小結(jié)
這篇文章主要介紹了你應(yīng)該知道的Python3.6、3.7、3.8新特性小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05Python中dataclass庫(kù)實(shí)例詳解
這篇文章主要介紹了Python中dataclass庫(kù),合理使用dataclass將會(huì)大大減輕開(kāi)發(fā)中的負(fù)擔(dān),將我們從大量的重復(fù)勞動(dòng)中解放出來(lái),這既是dataclass的魅力,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2022-09-09Python編程實(shí)現(xiàn)簡(jiǎn)易的音樂(lè)播放器基本操作
這篇文章主要來(lái)教大家利用Python編程來(lái)實(shí)現(xiàn)一個(gè)簡(jiǎn)易的音樂(lè)播放器,文中含有基本功能的操作示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-10-10對(duì)Python Class之間函數(shù)的調(diào)用關(guān)系詳解
今天小編就為大家分享一篇對(duì)Python Class之間函數(shù)的調(diào)用關(guān)系詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01Python中使用正則表達(dá)式及正則表達(dá)式匹配規(guī)則詳解
這篇文章主要介紹了Python中使用正則表達(dá)式以及正則表達(dá)式匹配規(guī)則,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03每天遷移MySQL歷史數(shù)據(jù)到歷史庫(kù)Python腳本
這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)每天遷移MySQL歷史數(shù)據(jù)到歷史庫(kù)的腳本,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-04-04回歸預(yù)測(cè)分析python數(shù)據(jù)化運(yùn)營(yíng)線性回歸總結(jié)
本文主要介紹了python數(shù)據(jù)化運(yùn)營(yíng)中的線性回歸一般應(yīng)用場(chǎng)景,常用方法,回歸實(shí)現(xiàn),回歸評(píng)估指標(biāo),效果可視化等,并采用了回歸預(yù)測(cè)分析的數(shù)據(jù)預(yù)測(cè)方法2021-08-08Python中字典的基礎(chǔ)介紹及常用操作總結(jié)
字典也是python的數(shù)據(jù)類型中的一種,它由許多鍵值對(duì)組成,它是一種可變?nèi)萜髂P?一般情況下鍵是唯一的,字典支持嵌套,下面這篇文章主要給大家介紹了關(guān)于Python中字典的基礎(chǔ)介紹及常用操作,需要的朋友可以參考下2021-09-09