初学__Python——Python 自定义函数
目錄
一、函數(shù)聲明
聲明函數(shù)的一般形式:
示例:求一個列表中所有整數(shù)之和
二、函數(shù)調(diào)用
函數(shù)是一組語句的集合,用以實(shí)現(xiàn)某一特定的功能。函數(shù)可以簡化腳本,Python 本身提供了許多內(nèi)置函數(shù),極大地方便了腳本的編寫。例如,可以使用 print 函數(shù)輸出計(jì)算結(jié)果,使用 input 函數(shù)接收用戶的輸入。除了系統(tǒng)內(nèi)置的函數(shù)之外,程序員還可以根據(jù)需要編寫自己的函數(shù)。
當(dāng)自定義函數(shù)很多時,為了方便這些函數(shù)的管理,可將函數(shù)分類保存到不同的模塊中。因此,模塊可以看做是一組函數(shù)的集合。許多函數(shù)庫在Python中都是以模塊的形式提供的,例如,系統(tǒng)中的 os 模塊提供了對系統(tǒng)操作的一系列函數(shù)。
在編寫腳本的過程中,經(jīng)常要完成許多重復(fù)的工作。此時就可以將完成重復(fù)工作的語句提取出來,將其編寫為函數(shù)。在腳本中可以方便地調(diào)用函數(shù)來完成這些重復(fù)的工作,而不必重復(fù)的復(fù)制粘貼代碼。
在Python中,函數(shù)必須先聲明,然后才能在腳本中使用。使用函數(shù)時,只要按照函數(shù)定義的形式向函數(shù)傳遞必需的參數(shù),就可以調(diào)用函數(shù)完成所需的功能。
一、函數(shù)聲明
在Python中,使用 def 可以聲明一個函數(shù)。完整的函數(shù)是由函數(shù)名、參數(shù)以及函數(shù)實(shí)現(xiàn)語句組成的。在函數(shù)中也要使用縮進(jìn)來表示語句屬于函數(shù)體。
如果函數(shù)有返回值,那么需要在函數(shù)中使用 return 語句返回計(jì)算結(jié)果。
-
聲明函數(shù)的一般形式:
-
示例:求一個列表中所有整數(shù)之和
- 其參數(shù) L 為所要求和的列表,result 是列表中所有整數(shù)的和,最后函數(shù)使用 return 將 result 返回
注:
- 在Python中聲明一個函數(shù)時,不需要聲明函數(shù)類型,也不需要聲明參數(shù)的類型。
- Python在實(shí)際調(diào)用函數(shù)的過程中,不需要為不同類型的參數(shù)聲明多個函數(shù),或不需要在處理不同類型數(shù)據(jù)的時候調(diào)用相應(yīng)的函數(shù)。
- 大部分情況下可以用同一個函數(shù)調(diào)用不同的數(shù)據(jù)類型。
上述代碼只聲明了一個 PrintAll(X) 函數(shù),并沒有指定參數(shù)的類型。函數(shù)調(diào)用的時候,不僅可以向其傳遞一個列表,還可以向其傳遞一個元組。?可以看到,不管參數(shù)作為一個列表,還是一個元組,函數(shù)都能被準(zhǔn)確地執(zhí)行。
當(dāng)然,這并不表示可以向函數(shù)傳遞任何參數(shù),其主要還是取決于函數(shù)的實(shí)現(xiàn)。在 PrintAll(X) 函數(shù)中,只使用了 for 循環(huán)語句,以及 print 函數(shù),他們都對所操作的對象沒有特別的要求,因此韓束才得以正確地執(zhí)行。
雖然Python中的函數(shù)靈活性很強(qiáng),但這也意味著一旦出現(xiàn)問題,只有在腳本運(yùn)行的時候才能被發(fā)現(xiàn)。
二、函數(shù)調(diào)用
在Python中調(diào)用自定義函數(shù)與系統(tǒng)內(nèi)置函數(shù)的方法相同,只要使用函數(shù)名指定要調(diào)用的函數(shù),然后在函數(shù)名后的圓括號中給出函數(shù)的參數(shù)即可。如果有多個參數(shù),則不同的參數(shù)要以 "," 隔開。
需要注意的是,即使函數(shù)不需要參數(shù),也要在參數(shù)名后使用一對空的圓括號。
函數(shù)調(diào)用必須在函數(shù)聲明之后。
>>> def hi (): # 不需要傳遞參數(shù),也沒有返回值 ... print('hi, tutu') ... >>> hi() # 調(diào)用函數(shù),使用一對空括號 hi, tutu # 函數(shù)運(yùn)行的結(jié)果,而不是返回值 >>> hi # 只輸入函數(shù)名,而不加括號 <function hi at 0x031907C8> # 返回的是函數(shù)在內(nèi)存中的地址 >>> def ListSum ( L ): ... result = 0 ... for i in L: ... result = result + i ... return result ... >>> l = [ 1, 2, 3, 4, 5 ] >>> r = ListSum (l) # 調(diào)用 ListSum 函數(shù),傳遞 l 為參數(shù),將 r 賦值為函數(shù)的返回值 >>> print(r) # 輸出 r 的值 15 >>> r = hi() # 將 r 賦值為 hi 函數(shù)的返回值 hi, tutu >>> print(r) # 輸出 r 的值 None # 表示函數(shù)無返回值,也可以理解為函數(shù)返回的值為 None總結(jié)
以上是生活随笔為你收集整理的初学__Python——Python 自定义函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 初学__Python——Python的流
- 下一篇: websocket python爬虫_p