一文搞懂Python中函數(shù)的定義與使用
函數(shù)的定義和調(diào)用
函數(shù)的定義:def作為函數(shù)定義的關(guān)鍵字,為了告訴python這是一個(gè)函數(shù)。
無(wú)參函數(shù)
def s(): print("你好呀,祝你天天開(kāi)心!") s()
輸出:
你好呀,祝你天天開(kāi)心!
有參函數(shù)
函數(shù)調(diào)用時(shí),將實(shí)參傳遞給形參
舉例:
def person(name,age,add)://函數(shù)的定義 print("名字是%s,%s的年齡是%d,%s的家庭住址是%s"%(name,name,age,name,add)) person(input("請(qǐng)輸入你的名字"),int(input("請(qǐng)輸入你的年齡")),input("請(qǐng)輸入你的家庭住址")) #函數(shù)的調(diào)用,形參實(shí)參的個(gè)數(shù)和類型必須保持一致
輸出:
請(qǐng)輸入你的名字易烊千璽
請(qǐng)輸入你的年齡22
請(qǐng)輸入你的家庭住址湖南懷化
名字是易烊千璽,易烊千璽的年齡是22,易烊千璽的家庭住址是湖南懷化
1:通過(guò)位置傳遞參數(shù):僅通過(guò)位置關(guān)系將實(shí)參對(duì)應(yīng)的形參聯(lián)系起來(lái),位置實(shí)參的順序很重要
def person(name,age): print("%s的年齡是%s"%(name,age)) person(12,"Jason")//12對(duì)應(yīng)name,age對(duì)應(yīng)jason person("Jason",12)
輸出:
12的年齡是Jason
Jason的年齡是12
2:通過(guò)關(guān)鍵字傳遞參數(shù):通過(guò)關(guān)鍵字將實(shí)參對(duì)應(yīng)的形參聯(lián)系起來(lái),順序不重要,因?yàn)閜ython知道那個(gè)實(shí)參該賦給那個(gè)形參
舉例:
def person(name,age): print("%s的年齡是%s"%(name,age)) person(age=12,name="Jason") person(name="Jason",age=12)
輸出:
Jason的年齡是12
Jason的年齡是12
帶有返回值的函數(shù)
將函數(shù)的值返回給調(diào)用函數(shù)
舉例:
def add(number1,number2): return number1+number2 print(add(12,23)) a=add(19,2) print(a)
輸出:
35
21
將函數(shù)返回值作為實(shí)參進(jìn)行調(diào)用:
def add(number1): return number1+10 print(add(12)) a=add(19) print(add(a))
輸出:
22
39
默認(rèn)值:給形參設(shè)定默認(rèn)值,對(duì)應(yīng)的實(shí)參可以不傳遞值,如果實(shí)參也有值,則對(duì)應(yīng)的默認(rèn)值會(huì)被覆蓋。
def add(number1,number2=9): return number1+number2 print(add(12)) a=add(19) print(a)
輸出:
21
28
函數(shù)與循環(huán)結(jié)合
與while循環(huán)結(jié)合
def getSum(x): //函數(shù)體 sum = 0 i = 1 while i < x: sum += i i += 1 return sum//將sun返回給調(diào)用函數(shù) print(getSum(10)) print(getSum(100))
輸出:
45
4950
與for循環(huán)結(jié)合
def getSum(x): i=1 add=1 for i in range(1,x): add*=i return add print(getSum(10))
輸出:
362880
函數(shù)的分類
內(nèi)置函數(shù)和自定義函數(shù)
內(nèi)置函數(shù)
python中已經(jīng)規(guī)定好用來(lái)實(shí)現(xiàn)某些特定功能的函數(shù)
舉例:
print(bool(2))//bool()函數(shù)用來(lái)查看數(shù)據(jù)的布爾值,非0返回True,0或返回False print(abs(-10))//abs()函數(shù)用來(lái)取數(shù)據(jù)的絕對(duì)值 print(type(12))//type()函數(shù)用來(lái)查看變量的類型
輸出:
True
10
<class 'int'>
自定義函數(shù)
通過(guò)編寫函數(shù)體去實(shí)現(xiàn)自主想實(shí)現(xiàn)的功能。
舉例:
def add(number1,number2,nmuber3): print(number1+number2+nmuber3)//打印三數(shù)之和 print(number1 * number2 * nmuber3)//打印三數(shù)之積 print(number1-number2-nmuber3)//打印數(shù)之差 add(10,2,7)
輸出:
19
140
1
函數(shù)的嵌套調(diào)用
自定義函數(shù)與三目運(yùn)算符結(jié)合:
def add(x,y): return x+y if x>y else x-y //三目運(yùn)算符:如果x>y,則返回值為x+y,否則為x-y print(add(1,3)) print(add(19,2))
輸出:
-2
21
自定義函數(shù)的嵌套使用:
def add(a,b,c,d): max1=max(a,b) max2=max(max1,c) max3=max(max2,d) return max3 max_s=add(23,4,15,6) print(max_s)
輸出:
23
函數(shù)的嵌套定義
注意函數(shù)的定義語(yǔ)句和調(diào)用語(yǔ)句縮進(jìn)必須保持一致。
def f1(): print('你好!') def f2(): print('希望你每天開(kāi)心') def f3(): print('好好學(xué)習(xí),天天向上!') f3() f2() f1()
輸出:
你好!
希望你每天開(kāi)心
好好學(xué)習(xí),天天向上!
到此這篇關(guān)于一文搞懂Python中函數(shù)的定義與使用的文章就介紹到這了,更多相關(guān)Python 函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python驗(yàn)證公網(wǎng)ip與內(nèi)網(wǎng)ip的實(shí)現(xiàn)示例
本文主要介紹了python驗(yàn)證公網(wǎng)ip與內(nèi)網(wǎng)ip的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07wxPython學(xué)習(xí)之主框架實(shí)例
這篇文章主要介紹了wxPython學(xué)習(xí)之主框架應(yīng)用實(shí)例,以一個(gè)基礎(chǔ)的彈出窗體實(shí)例講述了wxPython主框架應(yīng)用程序的實(shí)現(xiàn)方法,需要的朋友可以參考下2014-09-09Python實(shí)現(xiàn)Excel自動(dòng)分組合并單元格
這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)Excel自動(dòng)分組合并單元格,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-02-02python中偏函數(shù)partial用法實(shí)例分析
這篇文章主要介紹了python中偏函數(shù)partial用法,實(shí)例分析了偏函數(shù)partial的功能、定義及使用方法,需要的朋友可以參考下2015-07-07