用python画竹子_python函数
函數(shù)是組織好的,可重復(fù)使用的,用來實(shí)現(xiàn)單一,或相關(guān)聯(lián)功能的代碼段。
函數(shù)能提高應(yīng)用的模塊性,和代碼的重復(fù)利用率。你已經(jīng)知道Python提供了許多內(nèi)建函數(shù),比如print()。但你也可以自己創(chuàng)建函數(shù),這被叫做用戶自定義函數(shù)。
特性:代碼重用,保持一致性,可擴(kuò)展性。
函數(shù)的命名規(guī)范和變量命名一樣。
Python 定義函數(shù)使用 def 關(guān)鍵字,一般格式如下:
def 函數(shù)名(參數(shù)列表):
函數(shù)體
調(diào)用函數(shù)時(shí)格式如下:
函數(shù)名(參數(shù)列表)
簡(jiǎn)單函數(shù)
def func():#定義func函數(shù)
print("this is my function.") #func函數(shù)功能
func() #調(diào)用func函數(shù)
#執(zhí)行結(jié)果:this is my function.
帶參數(shù)的函數(shù)
形參(創(chuàng)建函數(shù)時(shí)的參數(shù)):形式參數(shù),不是實(shí)際存在,是虛擬變量。在定義函數(shù)和函數(shù)體的時(shí)候使用形參,目的是在函數(shù)調(diào)用時(shí)接收實(shí)參(實(shí)參個(gè)數(shù),類型應(yīng)與實(shí)參一一對(duì)應(yīng))
實(shí)參(調(diào)用函數(shù)時(shí)的參數(shù)):實(shí)際參數(shù),調(diào)用函數(shù)時(shí)傳給函數(shù)的參數(shù),可以是常量,變量,表達(dá)式,函數(shù),傳給形參
形參和實(shí)參的區(qū)別:形參是虛擬的,不占用內(nèi)存空間,.形參變量只有在被調(diào)用時(shí)才分配內(nèi)存單元,實(shí)參是一個(gè)變量,占用內(nèi)存空間,數(shù)據(jù)傳送單向,實(shí)參傳給形參,不能形參傳給實(shí)參
必需參數(shù)
必需參數(shù)須以正確的順序傳入函數(shù)。調(diào)用時(shí)的數(shù)量以及順序必須和聲明時(shí)的一樣。
def func(name,age,sex): #定義func函數(shù)并添加3個(gè)參數(shù)
print("name:%s\nage:%d\nsex:%s"%(name,age,sex)) #func函數(shù)功能
func("liu",18,"男") #因?yàn)槁暶骱瘮?shù)時(shí)有參數(shù) 所以調(diào)用時(shí)得加參數(shù) 且順序和數(shù)量必須和聲明時(shí)對(duì)應(yīng)
#執(zhí)行結(jié)果:
# name:liu
# age:18
# sex:男
關(guān)鍵字參數(shù)
關(guān)鍵字參數(shù)和函數(shù)調(diào)用關(guān)系緊密,函數(shù)調(diào)用使用關(guān)鍵字參數(shù)來確定傳入的參數(shù)值。
使用關(guān)鍵字參數(shù)允許函數(shù)調(diào)用時(shí)參數(shù)的順序與聲明時(shí)不一致,因?yàn)?Python 解釋器能夠用參數(shù)名匹配參數(shù)值。
def func(name,age,sex): #定義func函數(shù)并添加3個(gè)參數(shù)
print("name:%s\nage:%d\nsex:%s"%(name,age,sex)) #func函數(shù)功能
func(age=18,sex="男",name="liu") #關(guān)鍵參數(shù)的數(shù)量必須和聲明時(shí)數(shù)量一樣 參數(shù)的使用不需要使用聲明函數(shù)時(shí)指定順序
#執(zhí)行結(jié)果:
# name:liu
# age:18
# sex:男
默認(rèn)參數(shù)
調(diào)用函數(shù)時(shí),如果沒有傳遞參數(shù),則會(huì)使用默認(rèn)參數(shù)。
def func(name,age,sex="男"): #定義func函數(shù)并將sex設(shè)為默認(rèn)參數(shù)
print("name:%s\nage:%d\nsex:%s"%(name,age,sex)) #func函數(shù)功能
func(age=18,name="liu") #參數(shù)的數(shù)量必須和聲明時(shí)數(shù)量一樣 如果沒有傳遞sex則會(huì)默認(rèn)聲明時(shí)sex="男"
#執(zhí)行結(jié)果:
# name:liu
# age:18
# sex:男
func(age=18,name="liu",sex="女") #如果有傳遞sex 則聲明時(shí)默認(rèn)的sex將會(huì)改變
#執(zhí)行結(jié)果:
# name:liu
# age:18
# sex:女
不定長(zhǎng)參數(shù)
你可能需要一個(gè)函數(shù)能處理比當(dāng)初聲明時(shí)更多的參數(shù)。這些參數(shù)叫做不定長(zhǎng)參數(shù),和上述幾種參數(shù)不同,聲明時(shí)不會(huì)命名。
def func(*args): #加了星號(hào)(*)的變量名會(huì)存放所有未命名的變量參數(shù)。如果在函數(shù)調(diào)用時(shí)沒有指定參數(shù),它就是一個(gè)空元組
print(args) # 執(zhí)行結(jié)果:('liu', 18, '男') 所有傳遞上來的參數(shù)存在一個(gè)元組里
for i in args:
print(i)
func("liu",18,"男") #所有參數(shù)都將存儲(chǔ)到args元組里
#執(zhí)行結(jié)果:
# ('liu', 18, '男')
# liu
# 18
# 男
def func(**kwargs): #加了兩個(gè)星號(hào)(**)的變量名會(huì)存放所有已經(jīng)命名的變量參數(shù)。如果在函數(shù)調(diào)用時(shí)沒有指定參數(shù),它就是一個(gè)空字典
print(kwargs)# 執(zhí)行結(jié)果:{'age': 8, 'sex': '男', 'name': 'liu'} 所有傳遞上來的參數(shù)存在一個(gè)字典里
for i in kwargs:
print(i+":"+str(kwargs[i]))
func(name="liu",age=8,sex="男") #所有參數(shù)都將存儲(chǔ)到kwargs字典里,等號(hào)(=)前的值會(huì)變成關(guān)鍵字(key) 等號(hào)(=)后的數(shù)值會(huì)變成值(value)
#執(zhí)行結(jié)果:
# {'age': 8, 'sex': '男', 'name': 'liu'}
# age:8
# sex:男
# name:liu
總結(jié)
以上是生活随笔為你收集整理的用python画竹子_python函数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python分支结构使用if保留字吗_关
- 下一篇: python程序编程千分符号怎么输入_教