python基礎之return,參數

函數的返回值python

1.什麼是返回值:app

         返回值是一個函數的處理結果函數

2.爲何要有返回值blog

         若是須要在程序中拿到函數的處理結果,作進一步的處理,則須要函數必須有返回值class

3.函數返回值的應用:變量

         函數的返回值用return定義循環

         格式: return x數據類型

  注意:1.return是一個函數結束的標誌,可有多個return,但只要執行一次,函數就會結束運行程序

             2.return的返回值五類型限制,可任意數據類型總結

             3.返回值無個數限制,可用逗號分開多個任意類型的返回值

                          0個:返回None            1個:返回值就是值自己

                          多個:返回值爲元組

             4.不寫return,默認會在最後return None

 

調用函數

1.什麼是調用函數

         函數名()  即調用,會執行函數體代碼

2.爲什麼要調用?

         執行函數的功能

3.函數調用的三種形式

         def count(x):

                  return x

         1.普通:count(x)

         2.放在運算中:count(x) * 10

         3.做爲參數調用:count(count(x))

 

函數參數的應用:

         形參:在函數定義階段括號內定義的參數,稱爲形參,本質是變量名

         實參:在函數調用階段括號內傳入的值,稱爲實參,本質是變量的值

詳細分類:

         1.位置形參:在函數定義階段,按從左到右的順序依次定義的參數

                  特色:必須被傳值,不可多,不可少

          位置實參:在函數調用階段,按從左到右的順序依次定義的參數

                  特色:按照位置爲對應的形參依次傳值

         2.關鍵字實參:按key:value傳值,稱關鍵字實參

                  特色:能夠打破位置的限制,但仍能爲指定的形參賦值

                  注意:1.能夠混用位置參數與關鍵字實參,但位置實參必須在前面

                            2.能夠混用,但不能對一個形參重複賦值

         3.默認參數:在函數定義階段,就已經爲形參賦值

                  特色:在定義階段已被賦值,意味着在調用時能夠不爲其賦值

                  def foo(x, y = 10):    y=10就是默認參數

                          pass

                  注意:1.位置形參必須放在默認參數前面

                            2.默認參數的值只在定義階段賦值一次,即定義時就固定寫死了

                            3.默認參數的值一般應該定義不可變類型

         總結:實參的應用:可取決於我的的習慣

                    形參的應用:大多數狀況下調用值都同樣:默認參數

                                            大多數狀況下調用值不同:位置參數

         4.可變長參數:指的是在函數調用時:傳入的參數個數能夠不固定,而調用函數時,傳值的方式無非兩種,一種是位置實參,另外一種是關鍵實參,因此對應着形參也必須有兩種解決方案來分別接收溢出的位置實參(*)與關鍵字實參(**)

                  位置參數(*)

           ①.形參中*接收溢出的位置實數,而後存成元組的形式,賦值給*後的變量

           ②.實參中的參數也能夠帶*:       

                  實參中帶*,*會將該參數的值循環取出,打散成位置參數,但凡帶*實參,它就是位置實參,應該打散成位置實參看

               約定俗成:形參中的*變量名的寫法都是*args

                  關鍵字參數(**)

           ①.形參中的**會將溢出的關鍵字實參所有接收,而後存成字典的形式,賦值給**後的變量名

           ②.實參中帶**,**會將該參數的值循環取出,打散成關鍵字實數,但凡帶**的實參, 它就是關鍵字實參,應該打散成位關鍵字參看。**後必須是字典

             約定俗成:形參中的*變量名的寫法都是**kwargs

  

應用:
	def info(name,age,sex)
	  print(name)
	  print(age)
	  print(sex)
	def wrapper(*args,**kwargs):
	  info(*args,**kwargs)
	wrapper(‘egon’,18,’male,)
	這樣使用(*args,**kwargs)做爲參數時,能夠原封不動的把外部調用時的參數原封不動地	傳給內部參數
相關文章
相關標籤/搜索