Python 函數基礎

一.  什麼是函數微信

到這裏不少人都懵住了什麼是函數???Python函數其實就是,組織好的,可重複使用的,用來實現單一,或相關聯功能的代碼段。函數能提升應用的模塊性,和代碼的重複利用率。你已經知道Python提供了許多內建函數,好比print()。但你也能夠本身建立函數,這被叫作用戶自定義函數,函數是對功能的封裝!!!函數

二. 函數的定義, 函數名, 函數體以及函數的調用
spa

語法:code

def  函數名(形參列表):blog

  函數體(代碼塊,return)  #return爲返回值的意思微博

函數名(實參列表)  #調用函數的意思class

那麼咱們來定義一首詩的功能:咱們使用del關鍵字來定義函數,函數的定義語法以下變量

1 def Shi():    #使用del定義一個函數
2 
3   print("牀前明月光")    
4   print("疑是地上霜")
5   print("舉頭望明月")
6   print("低頭思故鄉")

定義完了,可是這個時候去執行程序你會發現什麼也沒有發生,由於咱們只是定義了函數可是尚未執行這個函數.語法

函數的調用:使用函數名能夠調用函數,程序

寫法:

函數名()

這個時候函數體纔會給執行

1 Shi()  #調用Shi函數
2 
3 結果:
4 牀前明月光
5 疑是地上霜
6 舉頭望明月
7 低頭思故鄉

三. 函數的返回值

1.遇到return,此函數結束,函數後面的東西就會不執行

2.return返回值

return : 在函數執行的時候. 若是遇到return. 直接返回
若是函數什麼都不寫, 不寫return, 沒有返回值. 獲得的是None
在函數中間或者末尾寫return, 返回的是None
在函數中寫return 值. 返回一個值.
在函數中能夠返回多個返回值, return 值1, 值2, 值3...., 接收的是元組

3.關於返回值

若是return什麼也不用寫或者不寫return,那麼返回的就是None

若是return後面寫了一個值,則調用者能夠接收一個結果

若是return後面寫了多個結果,則調用者能夠接收到的是tuple(元組),調用者能夠直接構結成多個變量

1.函數中遇到return,此函數就會結束,不能再繼續執行

1 def Shi():  #定義一個函數
2   print("牀前明月光")
3   print("疑是地上霜")
4   return
5   print("舉頭望明月")  #這句話後面的都會不給執行
6   print("低頭思故鄉")

 2.return返回值給函數的調用者一個訪問結果

1 def shi():  #定於一個函數
2     print("牀前明月光")
3     print("疑是地上霜")
4     print("舉頭望明月")
5     print("低頭思故鄉")
6     return '運行結束'   #返回值
7 jieshu = shi()
8 print(jieshu)   #運行結束

函數的返回值能夠是多個結果返回的是元組

 1 return '運行結束','hello' 

四.函數的參數

參數,函數在調用的時候指定具體的一個變量的值,這就是所謂的參數,

函數執行的時候給函數傳遞信息.
形參:函數聲明的位置的變量
實參:函數調用的時候給的具體的值
傳參:把實參交給形參的過程

語法:

def 函數名(參數列表):

函數體

實操,需求:拿出手機想打開什麼應用就打開什麼應用,

 1 def dakai(ruanjian):
 2     print ('拿出手機')
 3     print('打開:',ruanjian)
 4 dakai('微信')
 5 dakai('QQ')
 6 dakai('微博')
 7 結果;
 8 拿出手機
 9 打開: 微信
10 拿出手機
11 打開: QQ
12 拿出手機
13 打開: 微博

nice!搞定了是否是和很棒?,咱們在調用dakai的時候給ruanjian一個值,而後再執行函數體,

參數分爲:

1.形參,寫在函數聲明的位置叫作形參,形式上的一個完整,表示這個函數須要幹嗎幹嗎。。。

1. 位置參數
2. 默認值參數 先位置後默認值

 1 dakai(ruanjian):  #括號裏的爲形參,(ruanjian) 

2.實參,在函數調用的時候給函數傳遞的值,叫實參,即實際參數,實際執行的時候給函數傳遞的信息,表示叫函數幹啥幹啥幹啥。。。

1. 位置參數, 按照形參的參數位置, 給形參傳值
2. 關鍵字參數, 按照形參的名字給形參傳值
3. 混合參數. 即用位置參數, 也用關鍵參數

 1 dakai('微信') #括號裏的爲實參('微信') 

3.傳參,給函數傳遞信息的時候將實際參數交給形式參數的過程稱爲傳參

1 def dakai(ruanjian):    #ruanjian爲形參
2     print ('拿出手機')
3     print('打開:',ruanjian)    
4 dakai('微信')    #實參
5 print('關閉')    #這裏也表明實參

參數的分類:

1.位置參數

位置參數,意思就是按照位置來賦值的參數叫作位置參數,

1 #需求,錄入班級學生基本信息,基本信息有,名字,年齡,性別
2 def xue_sheng_xin_xi(name,age,sex): #定義一個函數,形參有name.age,sex
3     print('請錄入學生信息:')
4     print(name,age,sex) 
5 xue_sheng_xin_xi('小明', '20', '')   #實參

缺點:若是位置輸錯了的話信息也會跟着錯,必需要按照形參的位置來輸入信息

2.關鍵字參數

關鍵字參數,利用關鍵字定義的參數,只要記住每一個參數的名字就OK了

1 def xue_sheng_xin_xi(name,age,sex):
2     print('請錄入學生信息')
3     print(name,age,sex)
4 xue_sheng_xin_xi(sex='',name='YJ',age= '19')   #關鍵字參數
5 結果爲:
6 請錄入學生信息
7 YJ 19 女

優勢,不管順序怎樣掉亂最後輸出都是正確的排列

3.混合參數

1 def xin_xi(name,age=18,diqu="廣東"):  #默認指定了年齡跟地區
2     print('請錄信息')
3     print(name,age,diqu)
4 xin_xi (diqu='北京',name='YJ',age= '19')  #混合參數,地區跟年齡已經指定了如今還能改
5 結果爲:YJ 19 北京

也就是說在調用函數的時候既能夠給出位置參數,也能夠指定關鍵字參數

4.默認值參數,在函數聲明的時候,就能夠給出的參數的默認值,在調用的時候能夠給出具體的值,也能夠不給值使用默認值。

需求:在錄入信息的時候,發現大部分爲男生,在錄入時若是是男生sex就使用默認值

 1 def xin_xi_biao(name,age,sex=''):
 2     print('請錄入信息')
 3     print(name,age,sex)
 4 xin_xi_biao('小強',19)
 5 xin_xi_biao('小花',19,sex= '')
 6 結果:
 7 請錄入信息
 8 小強 19 9 請錄入信息
10 小花 19 女

注意:必須聲明位置參數才能聲明默認參數

2019年11月7日

相關文章
相關標籤/搜索