函數是具備某些特殊功能性的編碼塊,能夠多次重復使用。本文也為大伙兒詳解Python中函數的概念和應用,感興趣的朋友能夠學習下。
函數的概念和讀取
函數的概念:def做為函數定義的關鍵詞,為了能告知python是一款函數公式。
無參函數
def s(): print("你好呀,祝你天天開心!") s()
輸出:
你好呀,祝你天天開心!
有參函數
函數調用時,將實參傳遞給形參
舉例:
def person(name,age,add)://函數的定義 print("名字是%s,%s的年齡是%d,%s的家庭住址是%s"%(name,name,age,name,add)) person(input("請輸入你的名字"),int(input("請輸入你的年齡")),input("請輸入你的家庭住址")) #函數的調用,形參實參的個數和類型必須保持一致 def person(name,age): print("%s的年齡是%s"%(name,age)) person(12,"Jason")//12對應name,age對應jason person("Jason",12)
輸出:
12的年齡是Jason
Jason的年齡是12
2:通過關鍵字傳遞參數:通過關鍵字將實參對應的形參聯系起來,順序不重要,因為python知道那個實參該賦給那個形參
舉例:
def person(name,age): print("%s的年齡是%s"%(name,age)) person(age=12,name="Jason") person(name="Jason",age=12)
輸出:
35
21
將函數返回值作為實參進行調用:
def add(number1): return number1+10 print(add(12)) a=add(19) print(add(a))
輸出:
22
39
默認值:給形參設定默認值,對應的實參可以不傳遞值,如果實參也有值,則對應的默認值會被覆蓋。
def add(number1,number2=9): return number1+number2 print(add(12)) a=add(19) print(a)
輸出:
21
28
函數與循環結合
與while循環結合
def getSum(x): //函數體 sum=0 i=1 while i<x: sum+=i i+=1 return sum//將sun返回給調用函數 print(getSum(10)) print(getSum(100))
輸出:
45
4950
與for循環結合
def getSum(x): i=1 add=1 for i in range(1,x): add*=i return add print(getSum(10))
輸出:
362880
函數的分類
內置函數和自定義函數
內置函數
python中已經規定好用來實現某些特定功能的函數
舉例:
print(bool(2))//bool()函數用來查看數據的布爾值,非0返回True,0或返回False print(abs(-10))//abs()函數用來取數據的絕對值 print(type(12))//type()函數用來查看變量的類型
輸出:
True
10
<class'int'>
自定義函數
通過編寫函數體去實現自主想實現的功能。
舉例:
def add(number1,number2,nmuber3): print(number1+number2+nmuber3)//打印三數之和 print(number1*number2*nmuber3)//打印三數之積 print(number1-number2-nmuber3)//打印數之差 add(10,2,7)
輸出:
19
140
1
函數的嵌套調用
自定義函數與三目運算符結合:
def add(x,y): return x+y if x>y else x-y//三目運算符:如果x>y,則返回值為x+y,否則為x-y print(add(1,3)) print(add(19,2))
輸出:
-2
21
自定義函數的嵌套使用:
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
函數的嵌套定義
注意函數的定義語句和調用語句縮進必須保持一致。
def f1(): print('你好!') def f2(): print('希望你每天開心') def f3(): print('好好學習,天天向上!') f3() f2() f1()
輸出:
你好!
希望你每天開心
好好學習,天天向上!
綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家帶來幫助。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/128714.html
摘要:關于本書,我會寫好幾篇讀書筆記用以記錄那些讓我恍然大悟的瞬間,本文是第一篇弄懂的作用域和閉包。作用域也可以看做是一套依據名稱查找變量的規則。聲明實際上是根據你傳遞給它的對象憑空創建了一個全新的詞法作用域。 《你不知道的JavaScript》真的是一本好書,閱讀這本書,我有多次哦,原來是這樣的感覺,以前自以為理解了(其實并非真的理解)的概念,這一次真的理解得更加透徹了。關于本書,我會寫好...
摘要:裝飾器的使用符合了面向對象編程的開放封閉原則。三簡單的裝飾器基于上面的函數執行時間的需求,我們就手寫一個簡單的裝飾器進行實現。函數體就是要實現裝飾器的內容。類裝飾器的實現是調用了類里面的函數。類裝飾器的寫法比我們裝飾器函數的寫法更加簡單。 目錄 前言 一、什么是裝飾器 二、為什么要用裝飾器 ...
摘要:中對象包含的三個基本要素,分別是身份標識數據類型值對象之間比較是否相等可以用,也可以用。和都是對對象進行比較判斷作用的,但對對象比較判斷的內容并不相同。是標準操作符中的比較操作符,用來比較判斷兩個對象的值是否相等。 showImg(https://segmentfault.com/img/remote/1460000018591895?w=601&h=203); 在Python中一切都...
閱讀 911·2023-01-14 11:38
閱讀 878·2023-01-14 11:04
閱讀 740·2023-01-14 10:48
閱讀 1982·2023-01-14 10:34
閱讀 942·2023-01-14 10:24
閱讀 819·2023-01-14 10:18
閱讀 499·2023-01-14 10:09
閱讀 572·2023-01-14 10:02