Python基础七(函数)
函數(shù)概述
函數(shù):組織好的、可重復(fù)使用的。杉樹能提高應(yīng)用的模塊性和代碼的重復(fù)利用性。Python提供了很多的內(nèi)置函數(shù),比如len()等等,可以自行定義函數(shù)。
函數(shù)的定義
def 函數(shù)名(參數(shù)列表):? ?#函數(shù)定義
函數(shù)體
函數(shù)名() #函數(shù)執(zhí)行
def namePrint(): #函數(shù)定義,這是無參數(shù)函數(shù)print("我的名字是:發(fā)發(fā)")name() #執(zhí)行函數(shù) def func2(a): #定義了一個(gè)有形參的函數(shù)print(a)func2("123") #執(zhí)行函數(shù)需要輸入形參 def func3(a,b):print(a,b) func3(a=4,9) #錯(cuò)誤def func3(a,b):print(a,b) func3(4,b=9) #正確默認(rèn)參數(shù)傳值
def func3(a,b,c='hello'):print(a,b,c) func3(4,9)>>4 9 hellodef func3(a,b,c='hello'):print(a,b,c) func3(4,9,0)>>4 9 0?
獲取函數(shù)文檔字符串
def func1();"我是函數(shù)" #文檔字符串(只有第一行才是的)print(func1._doc_)?不定長參數(shù)
def func3(a,b,c,*d):print(a,b,c,d) func3('a','b','c','d','e')>>>a b c ('d', 'e')def func3(a,b,c,*d,**e):print(a,b,c,d,e) func3('a','b','c','d','e')>>>a b c ('d', 'e') {}必備參數(shù)
函數(shù)定義中允許擁有多個(gè)形參,因此函數(shù)調(diào)用時(shí),也可以包含多個(gè)實(shí)參想函數(shù)傳遞方式很多,通過實(shí)參和形參的順序?qū)?yīng),這就是位置實(shí)參。只有位置一致才能被正確匹配。
可變對象與不可變對象的傳輸
在Python?中,strings,tuples和numbers是不可更改的對象,而list、dict、和set等則是可以修改的對象。
不可變類型:變量賦值a=5后再賦值a=10,這里實(shí)際是重新重新生成了一個(gè)int值對象10,再讓a指向它,而5被丟棄,不是改變a的值,相當(dāng)于新生成了a。
可變類型:變量賦值la=[1,2,3,4]后賦值la[2]=5,本身的la沒有動(dòng),,只是其內(nèi)部的一部分值被修改了。
?函數(shù)參數(shù)參數(shù)-可變與不可變對象傳輸
不可變類型:如fun(a),傳遞只傳遞a的值,沒有影響a對象本身,只是修改另一個(gè)復(fù)制對象,不會(huì)影響a本身。
可變類型:列表、字典。如fun(la),則是將la真正的傳過去,修改后fun外部的la也會(huì)受影響。
?函數(shù)return返回結(jié)束
def fun2():return 111 #結(jié)束了print(234)fun2() print(fun2())>>>111
?
轉(zhuǎn)載于:https://www.cnblogs.com/fafalove/p/10066321.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的Python基础七(函数)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hessianphp java_hess
- 下一篇: python读写磁盘扇区数据_C++-如