這篇文章主要講解了“python中怎么自定義函數(shù)”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“python中怎么自定義函數(shù)”吧!
創(chuàng)新互聯(lián)建站服務(wù)項(xiàng)目包括樂至網(wǎng)站建設(shè)、樂至網(wǎng)站制作、樂至網(wǎng)頁(yè)制作以及樂至網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,樂至網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到樂至省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!python中支持自定義函數(shù)
以def開頭,后接標(biāo)識(shí)符名稱及圓括號(hào)(),圓括號(hào)內(nèi)部包含參數(shù)
圓括號(hào)后以冒號(hào)起始,下一行縮進(jìn)
以return[表達(dá)式]結(jié)束
# 自定義函數(shù)
def printme(str):
print(str)
return
# 調(diào)用函數(shù)1
printme("我調(diào)用我自己")
printme作為自定義函數(shù),str為參數(shù),自定義函數(shù)內(nèi)部的print(str)執(zhí)行將參數(shù)打印的操作,最后以return結(jié)尾。
def中的參數(shù)分不可變類型與可變類型
strings\tuples\numbers是不可變類型
list\dict等是可變類型
# 不可變類型
def ChangeInt(a):
a = 10
b = 2
ChangeInt(b)
print(b) # 結(jié)果是 2
可以看到b作為一個(gè)numbers,在b傳入?yún)?shù)傳入后不發(fā)生改變。
# 可變類型1
def changec(c):
c[2] = 1
return
cc = [3, 3, 3]
changec(cc)
print(cc)
可以看到cc作為一個(gè)list,在傳入c后發(fā)生了改變,結(jié)果為3,3,1。這里做了一個(gè)實(shí)驗(yàn)當(dāng)內(nèi)部函數(shù)c[2]=1改為c=[1, 1, 1]時(shí),函數(shù)不發(fā)生改變,小伙伴們感興趣可以解釋下為什么。
# 可變類型2
def changeme(mylist):
"修改傳入的列表"
mylist.append([1, 2, 3, 4])
mylist[2] = 55
print("函數(shù)內(nèi)取值: ", mylist)
return
# 調(diào)用changeme函數(shù)
mylist = [10, 20, 30]
changeme(mylist)
print("函數(shù)外取值: ", mylist)
這里append的作用是在矩陣的右邊增加[1, 2, 3, 4]矩陣,這里也是同樣道理,最終輸出結(jié)果為
函數(shù)內(nèi)取值: [10, 20, 55, [1, 2, 3, 4]]
函數(shù)外取值: [10, 20, 55, [1, 2, 3, 4]]
def中的參數(shù)可自動(dòng)匹配
# 參數(shù)名匹配參數(shù)值
def printme(str):
"打印任何傳入的字符串"
print(str)
return
# 調(diào)用printme函數(shù)
printme(str="My string")
這里是參數(shù)名匹配參數(shù)值的原則,設(shè)定參數(shù)為str后,可打印str=“XXX”,python會(huì)自動(dòng)識(shí)別。
# 參數(shù)順序不重要鄭州做人流哪家醫(yī)院好 http://mobile.sptdnk.com/
def printinfo(name, age):
"打印任何傳入的字符串"
print("Name: ", name)
print("Age ", age)
return
# 調(diào)用printinfo函數(shù)
printinfo(age=25, name="wly")
參數(shù)的順序?qū)τ趥鬟f不重要,這里顛倒順序后python自動(dòng)糾正。
def中的參數(shù)可賦初值
# 默認(rèn)參數(shù)在有初始值幅值的情況下可缺省
def printinfo1(name, age=25):
"打印任何傳入的字符串"
print("Name: ", name)
print("Age ", age)
return
# 調(diào)用printinfo函數(shù)
printinfo1(name="wqr")
當(dāng)有初始值賦值時(shí),可缺省參數(shù),若均有初始值賦值,可傳遞空。
def中的不定長(zhǎng)參數(shù)
# 不定長(zhǎng)參數(shù)
def printinfo(arg1, *vartuple):
"打印任何傳入的參數(shù)"
print("輸出: ")
print(arg1)
for var in vartuple:
print(var)
return
# 調(diào)用printinfo 函數(shù)
printinfo(10)
printinfo(70, 60, 50, 40)
不定長(zhǎng)參數(shù)用*XXX來(lái)表示,此時(shí)調(diào)用函數(shù)時(shí)可大于參數(shù)個(gè)數(shù)的任意數(shù)。for的作用是在vartuple的元素個(gè)數(shù)內(nèi)循環(huán)打印,結(jié)果是
輸出:
10
輸出:
70
60
50
40
# 匿名函數(shù)只能包含一個(gè)語(yǔ)句lambda [arg1 [,arg2,.....argn]]:expression
sum = lambda arg1, arg2: arg1 + arg2
# 調(diào)用sum函數(shù)
print("相加后的值為 : ", sum(10, 20))
print("相加后的值為 : ", sum(20, 20))
lambda是匿名函數(shù)定義如下
lambda [arg1 [,arg2,.....argn]]:expression
感謝各位的閱讀,以上就是“python中怎么自定義函數(shù)”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)python中怎么自定義函數(shù)這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
網(wǎng)頁(yè)標(biāo)題:python中怎么自定義函數(shù)-創(chuàng)新互聯(lián)
當(dāng)前URL:http://jinyejixie.com/article2/cesjoc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、手機(jī)網(wǎng)站建設(shè)、軟件開發(fā)、網(wǎng)站排名、服務(wù)器托管、動(dòng)態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容