午夜精品久久久久久久99老熟妇,天堂中文www官网,未满十八18勿进黄网站,太粗太深了太紧太爽了,天天爽夜夜爽夜夜爽

CDA數(shù)據(jù)分析師

CDA數(shù)據(jù)分析師

考試報(bào)名
考試報(bào)名
考試內(nèi)容
考試大綱
在線客服
返回頂部

Python小技巧之函數(shù)返回結(jié)果

2022-11-22

CDA數(shù)據(jù)分析師 出品

作者:CDA明星講師 曹鑫

編輯:Mika

Python之函數(shù)返回結(jié)果

大家好,今天我們來講講函數(shù)返回結(jié)果。但是我們拿來的這個(gè)函數(shù)還是稍顯復(fù)雜的。

返回斐波那契數(shù)列的 n 項(xiàng),我們定義 def fibo (n) ,fibo 是我自己取的一個(gè)名字,n 代表我要返回多少項(xiàng),然后冒號(hào)是函數(shù)的開頭結(jié)尾,然后下面要縮進(jìn)。

開始寫 a 等于 0,b等于1,i=0,result 等于一個(gè)空的列表,這都是我們提前的預(yù)知變量。

Python小技巧之函數(shù)返回結(jié)果

然后while i 小于 n,就是說如果我想要5個(gè),我這個(gè) i 如果小于5的話,我就執(zhí)行下面的操作。

i是什么?i 開始是 0,也就是從第0的位置,一個(gè)值開始。

那 0 肯定是小于 5 的, 接著 result.append (a) 。a 是什么?a 是 0,它第一個(gè)位置就是 0 。

接下來這個(gè)特別重要,a,b=b, a+b, 也就是同時(shí)賦值。a 被賦值為b,b被賦值為 a+b 。

這里一定要記住了, a 這個(gè)時(shí)候是 0,但是 b 是 1,所以這個(gè)賦值的時(shí)候,a 就變成了 1 了,接下來 b 被賦值成 a+b。

注意這里的 a 依然是 0,1 是 1,因?yàn)樨?fù)值是同時(shí)產(chǎn)生的,你不能把這里賦值完值的 a 再拿到這里來用。

這后面 b 就是 1,a 就是 0,b 就是 1,這時(shí)候 a 和 b 就分別又被賦值成了1和0+1 也是1,然后 i=i+1,去為了下一次循環(huán)做準(zhǔn)備。

接下來第二個(gè), i=i+1 之后,i 依然是小于 5 的,繼續(xù)把 result.append 剛剛 a它已經(jīng)被賦值為 1 了,1 進(jìn)去之后再繼續(xù)求 a,b 分別是 b 和 a+b 的賦值,也就是這么一個(gè)循環(huán),不斷的去進(jìn)行,直到 i 不小于你給出的 n ,就得到了一個(gè)結(jié)果。

Python小技巧之函數(shù)返回結(jié)果

就把這個(gè)結(jié)果給 return出來,return 就是返回結(jié)果的方式,我們運(yùn)行一下,然后把 fibo改成 10,我們就得到了 0、1、1這樣一個(gè)10位的斐波那契數(shù)列。

為什么這里可以自動(dòng)打印出來?

首先 return 了,就是把這個(gè)值返回過來了,同時(shí)在 jupyter notebook 里面默認(rèn)最后一行是打印的,所以這里有個(gè) print操作,就可以把這個(gè)結(jié)果顯示出來。

這里最重要的要理解的就是這個(gè) a,b它在做同時(shí)賦值的時(shí)候一定是用原始的值來求的。

如果你把它分開,分成 a=b ,然后再用b=a+b 的話,這個(gè)時(shí)候它就有一個(gè)先后運(yùn)算的關(guān)系了,而在這里它是同時(shí)運(yùn)行的,這里需要大家好好理解。

Python之遍歷操作

接下來我們來講講遍歷的操作。

我這里有一個(gè) n ,那遍歷三次的話就是 for i in range (n) ,然后 print (i)。我們就會(huì)得到0、1、2 那個(gè)結(jié)果。為什么呢?

因?yàn)?range (n) 它其實(shí)意思就是 range (0) 到你的 n,這里是 3,就是 0 到 3 這樣一個(gè)范圍,這是我們最常用的遍歷的方式。

Python小技巧之函數(shù)返回結(jié)果

當(dāng)大家不知道這個(gè) range 是什么的時(shí)候,可以用 range (n) 把它打印出來看一下,它會(huì)返回什么結(jié)果。

完 謝謝觀看

完 謝謝觀看