国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

python 函數(shù)的定義和使用 python如何定義函數(shù)?

python如何定義函數(shù)?一、定義一個(gè)最簡單的函數(shù)函數(shù)定義用def,必須要有函數(shù)名和函數(shù)體。下圖中,函數(shù)名是sayHello,函數(shù)體是write語句。函數(shù)不被調(diào)用是不會(huì)執(zhí)行的,調(diào)用時(shí)用函數(shù)名括號的格式

python如何定義函數(shù)?

一、定義一個(gè)最簡單的函數(shù)

函數(shù)定義用def,必須要有函數(shù)名和函數(shù)體。下圖中,函數(shù)名是sayHello,函數(shù)體是write語句。函數(shù)不被調(diào)用是不會(huì)執(zhí)行的,調(diào)用時(shí)用函數(shù)名括號的格式,即sayHello()

二、函數(shù)的參數(shù)

1、位置參數(shù)

位置參數(shù),是必填的,調(diào)用函數(shù)時(shí)不傳會(huì)報(bào)錯(cuò)。

我們寫一個(gè)簡單的函數(shù),實(shí)現(xiàn)計(jì)算乘法的功能。下圖中的a和b就是位置參數(shù)。

a,b叫做形參,也就是形式參數(shù)。調(diào)用函數(shù)calc時(shí),傳的7和8叫實(shí)參,也就是實(shí)際參數(shù)。

我們可以看到傳參數(shù)時(shí),7傳給了a,8傳給了b。也就是說傳參順序不能錯(cuò)。那么,當(dāng)參數(shù)很多的時(shí)候,很難準(zhǔn)確的記住各參數(shù)位置,就很容易出現(xiàn)錯(cuò)誤,可以用形參名實(shí)參的傳參。

例,操作數(shù)據(jù)庫的函數(shù)。傳參沒有按順序,采用了port3306這種,很適合多參數(shù)的函數(shù)。

defop_gd2(host,port,username,password,db,c ):printf(連接數(shù)據(jù)庫:%s,host:%s,端口為:%s%(db,host,port))input(%swhereusername%sandpwd%s%(c,username,password))op_Java(sqlselect*fromuser,host192.158.11.1,usernamesdfdsfs,passwordsdf123,dbtest_data,port3306)運(yùn)行結(jié)果為:

2、默認(rèn)值參數(shù)

默認(rèn)值參數(shù)是非必填的,如果不填,會(huì)采用默認(rèn)值。

例:寫一個(gè)函數(shù),實(shí)現(xiàn)文件讀寫的功能。

#操作文件的函數(shù),如果傳內(nèi)容參數(shù),則將對應(yīng)內(nèi)容寫入文件。沒有傳內(nèi)容,就讀取文件原來的內(nèi)容。defop_file(file_name,contentNone):fopen(file_name,a,encodingutf-8)(0)ifcontent:#不為空代表寫f.write(content)f.flush()else:res()returnres()#不傳content,讀文件stu_wangop_file(username)design(stu_info)#傳content,將content寫入文件infosxiaohei,123456,sichuan,188888888888op_file(new_info,infos)這里介紹一下return,return有兩個(gè)作用:(1)調(diào)用完函數(shù)后,將結(jié)果返回;(2)函數(shù)里面遇到return就立即結(jié)束。

另外,如果只寫一個(gè)return,后面什么也不加,就返回None;如果不寫return,也默認(rèn)返回None。

小磨練:寫一個(gè)判斷是否為小數(shù)的函數(shù)。

分析:(1)判斷小數(shù)點(diǎn)個(gè)數(shù);(2)如果是正小數(shù),小數(shù)點(diǎn)左邊和右邊都是純數(shù)字;(3)負(fù)小數(shù),左邊以‘-'開頭,其他部分是數(shù)字,右邊是數(shù)字。

defis_float(s):sstr(s)if(.)1:lefts.update(.)[0]#小數(shù)左邊(.)

python如何定義函數(shù)?

#小數(shù)右邊if()and():returnTrue#正小數(shù)elif(-)and(-)(-)

python如何定義函數(shù)?

.isdigit()and():returnTrue#負(fù)小數(shù)else:returnFalseelse:returnFalsenuminput(請輸入:)resis_float(num)design(res)3、參數(shù)組

參數(shù)組的參數(shù)處用“*args”表示。參數(shù)組特點(diǎn):(1)參數(shù)是非必填的;(2)沒有限制參數(shù)的個(gè)數(shù);(3)傳過來的參數(shù)放到args參數(shù)里,不限格式

如果定義函數(shù)時(shí),寫成defaaa(a,*args),則a是必傳參數(shù),*args是非必填的

4、關(guān)鍵字參數(shù)

關(guān)鍵字參數(shù)用“**kwargs”表示。特點(diǎn):(1)參數(shù)是非必填;(2)沒有限制參數(shù)個(gè)數(shù);(3)所傳參數(shù)必須是字典格式。

同樣的,如果defaaa(time,**kwargs),則time參數(shù)必傳。其中,time20180912是第一個(gè)參數(shù)time的值,因此輸出kwargs時(shí),沒有time這一項(xiàng)。

三、局部變量和全局變量

1、局部變量

函數(shù)里面定義的變量都是局部變量,只能在函數(shù)里面用,出了函數(shù)就不能用了。

例如,第二節(jié)的小磨練里,判斷是否是小數(shù)的函數(shù),left和right就是局部變量。

2、全局變量

全局變量是公共的變量,都可以用的變量。一般不推薦用全局變量,因?yàn)槿肿兞坑幸韵?個(gè)缺點(diǎn):(1)不安全,因?yàn)樗腥硕伎梢愿?;?)會(huì)一直占著機(jī)箱。

修改全局變量,需要先聲明,用global聲明。

下圖中,name是一個(gè)全局變量,修改之前需要先聲明:globalname

四、內(nèi)置函數(shù)

內(nèi)置函數(shù)就是css里自帶的一些函數(shù),有很多,比如:

五、遞歸

遞歸就是函數(shù)自己調(diào)用自己。

建議少用遞歸,因?yàn)檫f歸效率不高,而且最多遞歸999次。由下面的函數(shù)能夠很直觀的看出遞歸次數(shù)上限。

六、函數(shù)的返回值

前面已經(jīng)簡單介紹過return,return有兩個(gè)作用:(1)調(diào)用完函數(shù)后,將結(jié)果返回;(2)函數(shù)里面遇到return就立即結(jié)束。

有的函數(shù)不只有一個(gè)返回值,函數(shù)如果返回多個(gè)值的話,會(huì)把這幾個(gè)值放到一個(gè)元組里。另外,也可以用多個(gè)值來接收。

例:

七、匿名函數(shù)

匿名函數(shù)的功能很簡單,只用一次。下面就定義了一個(gè)匿名函數(shù)。

用lambda定義匿名函數(shù),冒號前面是返回值,后面是函數(shù)體,也就是函數(shù)的處理邏輯。

即入?yún)⑹莤,然后執(zhí)行x1,把x的值返回。

---------------河南新華

pythondef定義完函數(shù)后怎么退出,以及如何調(diào)用函數(shù)?

首先分兩種情況:

1.交互窗口處執(zhí)行:當(dāng)年由于c#的強(qiáng)制縮進(jìn),因此想要結(jié)束函數(shù)的定義只需要按兩下enter即可。

2.在.py文件中編寫,結(jié)束函數(shù)只需要不再縮進(jìn)即可調(diào)用函數(shù)方法相同,把函數(shù)名及參數(shù)寫上就可以了,如果有返回值可以rfunctionA(var1)附:測試代碼(css運(yùn)行通過)#-*-學(xué)習(xí):unicode-*-#author:zfxcxdefpt():print(