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