欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關(guān)于Python中幾個(gè)有趣的函數(shù)和推導(dǎo)式解析

 更新時(shí)間:2023年08月01日 10:47:52   作者:Python 學(xué)習(xí)者  
這篇文章主要介紹了關(guān)于Python中幾個(gè)有趣的函數(shù)和推導(dǎo)式解析,推導(dǎo)式comprehensions,又稱解析式,是Python的一種獨(dú)有特性,推導(dǎo)式是可以從一個(gè)數(shù)據(jù)序列構(gòu)建另一個(gè)新的數(shù)據(jù)序列的結(jié)構(gòu)體,需要的朋友可以參考下

一、range()函數(shù)

1、range()通常用來(lái)做循環(huán)。

2、range()生成器的特性。

例子:假如range()中使用的數(shù)值特別大,為100000000000000000000000000000?python解釋器還能正常工作嗎?

如果是事先生成100000000000000000000000000000個(gè)數(shù),然后依次遍歷生成,那么內(nèi)存肯定溢出。而實(shí)際上如此巨大的數(shù)值依然不會(huì)使程序卡死。

代碼

for i in range(100000000000000000000000000000):
    print(i)
    if i > 10:
        break

輸出結(jié)果:

0
1
2
3
4
5
6
7
8
9
10
11        

因?yàn)閞ange()函數(shù)會(huì)使用類似于生成器的特性,每次循環(huán)會(huì)記住上次使用時(shí)生成的結(jié)果值,然后從斷點(diǎn)處繼續(xù)生成,這樣就避免了空間浪費(fèi)。

二、遞歸的雷區(qū)

在計(jì)算機(jī)中,遞歸都是通過(guò)“棧”(stack)這種數(shù)據(jù)結(jié)構(gòu)來(lái)實(shí)現(xiàn)的,每當(dāng)遞歸加深一層,棧頂就增加一層,每當(dāng)遞歸減少一層,棧頂就減少一層。

在python當(dāng)遞歸深度達(dá)到1000層時(shí),會(huì)導(dǎo)致棧溢出。

三、匿名函數(shù)lambda

1、匿名函數(shù)實(shí)例: lambda x : x+1。:前面表示傳入的參數(shù),后面表示需要執(zhí)行的代碼。無(wú)需寫(xiě)返回值。

2、匿名函數(shù)也是函數(shù),有自己的命名空間。

四、推導(dǎo)式

1、列表推導(dǎo)式

即用簡(jiǎn)短的語(yǔ)法來(lái)生成一個(gè)列表,通常用[]表示。

常規(guī)版:

print([x for x in range(10)])

#輸出
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

增加過(guò)濾條件:

print([x for x in range(10) if x >5])

#輸出
[6, 7, 8, 9]

還可以增加多個(gè)變量和條件進(jìn)行篩選。

2、字典推導(dǎo)式

即用簡(jiǎn)短的語(yǔ)法來(lái)生成一個(gè)字典,通常用{}表示。

print({x:x+2 for x in range(10)})

#輸出
{0: 2, 1: 3, 2: 4, 3: 5, 4: 6, 5: 7, 6: 8, 7: 9, 8: 10, 9: 11}

注意:必須藥用:來(lái)表示key-value

3、集合推導(dǎo)式

與字典推導(dǎo)式類似,但是要去掉‘ :’

print({x+2 for x in range(10)})

#輸出
{2, 3, 4, 5, 6, 7, 8, 9, 10, 11}

注意:沒(méi)有元組推導(dǎo)式!沒(méi)有元組推導(dǎo)式!因?yàn)椋ǎ?biāo)識(shí)符被用作生成器的標(biāo)識(shí)符號(hào)了。

所以想要?jiǎng)?chuàng)建元組推導(dǎo)式,可以用顯式函數(shù)tuple()來(lái)表示。

print(tuple(x for x in range(5)))

#輸出
(0, 1, 2, 3, 4) 

到此這篇關(guān)于關(guān)于Python中幾個(gè)有趣的函數(shù)和推導(dǎo)式解析的文章就介紹到這了,更多相關(guān)Python函數(shù)和推導(dǎo)式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論