python fact函数_第5天:Python 函数
函數(shù)是組織好的,可重復(fù)使用的,用來實(shí)現(xiàn)單一,或相關(guān)聯(lián)功能的代碼段,所以我經(jīng)常說函數(shù)是程序員規(guī)?;褂玫幕A(chǔ)。
函數(shù)能提高應(yīng)用的模塊性,和代碼的重復(fù)利用率。在程序設(shè)計(jì)中,常將一些常用的功能模塊編寫成函數(shù),放在函數(shù)庫中供公共選用。善于利用函數(shù),可以減少重復(fù)編寫程序段的工作量。
如何定義一個(gè)函數(shù)
定義一個(gè)函數(shù)有如下幾個(gè)步驟
函數(shù)代碼塊以 def 關(guān)鍵詞開頭,后接函數(shù)標(biāo)識(shí)符名稱和圓括號(hào)()。
任何傳入?yún)?shù)和自變量必須放在圓括號(hào)中間。圓括號(hào)之間可以用于定義參數(shù)。
函數(shù)的第一行語句可以選擇性地使用文檔字符串—用于存放函數(shù)說明。
函數(shù)內(nèi)容以冒號(hào)起始,并且縮進(jìn)。
return [表達(dá)式] 結(jié)束函數(shù),選擇性地返回一個(gè)值給調(diào)用方。不帶表達(dá)式的return相當(dāng)于返回 None。
語法
def 函數(shù)名(參數(shù)列表):
函數(shù)體
默認(rèn)情況下,參數(shù)值和參數(shù)名稱是按函數(shù)聲明中定義的順序匹配起來的。
簡(jiǎn)單示例
一個(gè)最簡(jiǎn)單的函數(shù)示例:
#定義一個(gè)函數(shù)
def hello() :
print("Hello World!")
#調(diào)用函數(shù)
hello()
再來一個(gè)代參數(shù)的示例:
#定義一個(gè)函數(shù)
def helloN(name) :
print("Hello World!", name)
#調(diào)用函數(shù)
helloN('neo')
加減乘除示例
我們使用函數(shù)實(shí)現(xiàn)一個(gè)基本的加減乘除運(yùn)算。
#定義函數(shù)
def add(a,b) :
return a+b
def reduce(a,b) :
return a-b
def multiply(a,b) :
return a*b
def divide(a,b) :
return a/b
#調(diào)用函數(shù)
print(add(1,2))
print(reduce(12,2))
print(multiply(6,3))
print(divide(12,6))
發(fā)現(xiàn)定義函數(shù)可以實(shí)現(xiàn)代碼的多次復(fù)用。
多個(gè)返回值
某些情況下,我們需要一個(gè)函數(shù)返回多個(gè)值,Python 也是支持的。
#定義多個(gè)返回值函數(shù)
def more(x, y):
nx = x + 2
ny = y - 2
return nx, ny
#調(diào)用函數(shù)
x, y = more(10, 10)
print(x, y)
遞歸函數(shù)
有時(shí)候我們需要反復(fù)調(diào)用某個(gè)函數(shù)得到一個(gè)最后的值,這個(gè)時(shí)候使用遞歸函數(shù)是最好的解決方案。
編程語言中,函數(shù)Func(Type a,……)直接或間接調(diào)用函數(shù)本身,則該函數(shù)稱為遞歸函數(shù)。遞歸函數(shù)不能定義為內(nèi)聯(lián)函數(shù)
舉個(gè)例子,我們來計(jì)算階乘n! = 1 x 2 x 3 x ... x n,用函數(shù)fact(n)表示,可以看出:
fact(n) = n! = 1 x 2 x 3 x ... x (n-1) x n = (n-1)! x n = fact(n-1) x n
所以,fact(n)可以表示為n x fact(n-1),只有n=1時(shí)需要特殊處理。
于是,fact(n)用遞歸的方式寫出來就是:
def fact(n):
if n==1:
return 1
return n * fact(n - 1)
這樣一個(gè)遞歸函數(shù)就定義完了。
我們?cè)囍{(diào)用一下 6 的階乘是多少,可以這樣調(diào)用:
print(fact(6))
# 輸出內(nèi)容
# 720
類似的需要都可以按照這樣的方式來實(shí)現(xiàn)。
總結(jié)
本節(jié)給大家介紹了 Python 函數(shù)的使用。
關(guān)注公眾號(hào):python技術(shù),回復(fù)"python"一起學(xué)習(xí)交流
總結(jié)
以上是生活随笔為你收集整理的python fact函数_第5天:Python 函数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 中国科幻顶级IP首登荧屏!《三体》电视剧
- 下一篇: 发运破万,新一批比亚迪 ATTO 3 起