- 首頁(yè)|
- 網(wǎng)校|
- 焚題庫(kù)|
- APP |
-
微信公眾號(hào)
看似循環(huán)語(yǔ)句可以簡(jiǎn)單的表述,但是如果完成復(fù)雜的結(jié)果就需要大量的代碼。對(duì)于列表的學(xué)習(xí)想必大家都涉及到了,不過(guò)之前學(xué)的都是用for循環(huán)去處理,今天我們?cè)囍荛_(kāi)for循環(huán),看看其他的代碼如何來(lái)創(chuàng)建列表。
先看下面的代碼:
data = [x**2 for x in range(0, 5)]
# 此時(shí)data = [0, 1, 4, 9, 16]
如果不知道背后的語(yǔ)法規(guī)則,那么很難理解為什么可以在列表的方括號(hào)中寫(xiě)一個(gè)“for”循環(huán)?實(shí)際上,這種語(yǔ)法稱(chēng)為列表推導(dǎo)式,和lambda表達(dá)式類(lèi)似,都是在代碼很短的情況下被使用。
列表推導(dǎo)式或者說(shuō)列表解析式是一種非常簡(jiǎn)潔的創(chuàng)建列表的方式。很多時(shí)候我們需要?jiǎng)?chuàng)建一個(gè)滿(mǎn)足特定要求的新列表,不得不用for循環(huán)來(lái)創(chuàng)建,而用列表推導(dǎo)式來(lái)表達(dá)只需要一行代碼即可。列表推導(dǎo)式另一個(gè)優(yōu)點(diǎn)是相比于for循環(huán)更高 效,因?yàn)榱斜硗茖?dǎo)式在執(zhí)行時(shí)調(diào)用的是Python的底層C代碼,而for循環(huán)則是用Python代碼來(lái)執(zhí)行。
比如我們需要?jiǎng)?chuàng)建一個(gè)包含平方數(shù)的列表,用for循環(huán)實(shí)現(xiàn)方式如下:
squares = []
for i in range(10):
squares.append(i**2)
print(squares)
如果用列表推導(dǎo)式的話(huà)只需一行代碼即可實(shí)現(xiàn):
squares = [i**2 for i in range(10)]
列表推導(dǎo)式的語(yǔ)法結(jié)構(gòu)可以分為幾部分:
0. “[]”,定義列表的中括號(hào)。
1. for循環(huán)初步定義列表。
2. 可選:在for循環(huán)后面可以使用if語(yǔ)句進(jìn)行過(guò)濾。
3. 在for循環(huán)前定于列表的元素表達(dá)式,可以是任意的表達(dá)式?梢允莊or循環(huán)中的元素本身,也可以是元素進(jìn)行運(yùn)算后的結(jié)果,也可以是元素組成的元祖或者列表,可以是一個(gè)函數(shù),甚至可以是另一個(gè)列表解析式(嵌套列表解析式)。
4. 可選:在for循環(huán)后面可以再嵌套for循環(huán)。
如今python編程語(yǔ)言市場(chǎng)需求大,薪資待遇上萬(wàn)盡在咫尺!如果你也想學(xué)習(xí)python技術(shù)可以填寫(xiě)下面表單,Python學(xué)習(xí)資料限時(shí)免費(fèi)領(lǐng)!
上一篇:python對(duì)列表中的元素進(jìn)行去重操作
下一篇: 沒(méi)有了
初級(jí)會(huì)計(jì)職稱(chēng)中級(jí)會(huì)計(jì)職稱(chēng)經(jīng)濟(jì)師注冊(cè)會(huì)計(jì)師證券從業(yè)銀行從業(yè)會(huì)計(jì)實(shí)操統(tǒng)計(jì)師審計(jì)師高級(jí)會(huì)計(jì)師基金從業(yè)資格稅務(wù)師資產(chǎn)評(píng)估師國(guó)際內(nèi)審師ACCA/CAT價(jià)格鑒證師統(tǒng)計(jì)資格從業(yè)
一級(jí)建造師二級(jí)建造師消防工程師造價(jià)工程師土建職稱(chēng)房地產(chǎn)經(jīng)紀(jì)人公路檢測(cè)工程師建筑八大員注冊(cè)建筑師二級(jí)造價(jià)師監(jiān)理工程師咨詢(xún)工程師房地產(chǎn)估價(jià)師 城鄉(xiāng)規(guī)劃師結(jié)構(gòu)工程師巖土工程師安全工程師設(shè)備監(jiān)理師環(huán)境影響評(píng)價(jià)土地登記代理公路造價(jià)師公路監(jiān)理師化工工程師暖通工程師給排水工程師計(jì)量工程師
人力資源考試教師資格考試出版專(zhuān)業(yè)資格健康管理師導(dǎo)游考試社會(huì)工作者司法考試職稱(chēng)計(jì)算機(jī)營(yíng)養(yǎng)師心理咨詢(xún)師育嬰師事業(yè)單位教師招聘公務(wù)員公選考試招警考試選調(diào)生村官
執(zhí)業(yè)藥師執(zhí)業(yè)醫(yī)師衛(wèi)生資格考試衛(wèi)生高級(jí)職稱(chēng)護(hù)士資格證初級(jí)護(hù)師主管護(hù)師住院醫(yī)師臨床執(zhí)業(yè)醫(yī)師臨床助理醫(yī)師中醫(yī)執(zhí)業(yè)醫(yī)師中醫(yī)助理醫(yī)師中西醫(yī)醫(yī)師中西醫(yī)助理口腔執(zhí)業(yè)醫(yī)師口腔助理醫(yī)師公共衛(wèi)生醫(yī)師公衛(wèi)助理醫(yī)師實(shí)踐技能內(nèi)科主治醫(yī)師外科主治醫(yī)師中醫(yī)內(nèi)科主治兒科主治醫(yī)師婦產(chǎn)科醫(yī)師西藥士/師中藥士/師臨床檢驗(yàn)技師臨床醫(yī)學(xué)理論中醫(yī)理論