亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python函數學習解析

系統 2410 0

一、函數調用過程

程序調用函數需要四步:

  1. 調用程序在調用處暫停執行
  2. 在調用時將實參復制給函數的形參
  3. 執行函數體語句
  4. 函數調用結束給出返回值,程序回到調用前的暫停處繼續執行。

二、函數的參數傳遞

**形式參數(形參):**在函數創建和定義過程中使用的參數。
**實際參數(實參):**在函數被調用的過程中傳遞進來的參數。
形參只是代表一個位置、一個變量名,沒有具體的值。
實參是一個具體的值,是賦值到變量名中的值。
實參默認按位置順序依次傳遞給形參,若參數個數不對,就會報錯
關鍵字參數:

普通的參數叫做位置參數,調用時需要按照位置傳遞參數值。
關鍵字參數就是在調用函數,傳入實參時指定形參的變量名。

可選參數(默認值參數):

定義函數時,如果有些參數存在默認值,可以在定義函數時直接為這些參數指定默認值。
當函數被調用時,如果沒有傳入對應的參數值,則使用函數定義時的默認值替代。
由于函數調用時需要按照順序輸入參數, 可選參數必須定義在非可選參數的后面。

可變數量參數(*c,**d):

在定義函數時,可以設計可變數量參數,通過參數前增加 單星號( * )或雙星號( ** ) 實現。帶有星號的可變參數只能出現在參數列表的后面。調用時,增加單星號的參數被當做 元組 類型傳遞到函數中,增加雙星號的參數被當做 字典 類型傳遞到函數中。

            
              >>>def vfunc(a, *b):
				print(type(b))
				for n in b:
						a +=n
				return a
				
>>>vfunc(1,2,3,4,5)

              
                
15

              
            
          

參數的位置與名稱傳遞

Python提供了按照形參名稱輸入實參的方式,函數調用如下:

            
              result = func(x2=4, y2=5, z2=6, x1=1, y1=2, z1=3)

            
          

由于調用函數時指定了參數名稱,所以參數之間的順序可以任意調整。

參數傳遞的基本順序:

  • 位置參數
            
              >>> def add(x,y):
>>> 	return x + y
>>> add(3,4)
7

            
          
  • 關鍵字參數
            
              >>> def add(x,y):
>>> 	return x + y
>>> add(y = 4,x = 3)
7

            
          
  • 可變數量參數
    1.arg:以 元組 形式返回
    2.**arg:以 字典 形式返回
            
              >>> def test_fun(a,b = 6,*c,**d):
>>>    print("a = ",a,"b = ",b,"c = ",c,"d = ",d)
>>> test_fun(1)
a =  1 b =  6 c =  () d =  {}

>>> test_fun(1,2)
a =  1 b =  2 c =  () d =  {}

>>> test_fun(1,2,3)
a =  1 b =  2 c =  (3,) d =  {}

>>> test_fun(1,2,3,4)
a =  1 b =  2 c =  (3,4) d =  {}

>>> test_fun(a = 1)
a =  1 b =  6 c =  () d =  {}

>>> test_fun(a = 1,b = 2,c = 3) #c和d是占位符,不是名稱,c是不確定數量的單個變量,d是有鍵有值
a =  1 b =  2 c =  () d =  {'c': 3}

>>> test_fun(1,2,3,4,x = 1)
a =  1 b =  2 c =  (3,4) d =  {'x': 1}

>>> test_fun(1,2,3,4,5,6,x = 1,y = 2,z = 3)
a =  1 b =  2 c =  (3, 4, 5, 6) d =  {'x': 1, 'y': 2, 'z': 3}

>>> test_fun(1,2,3,4,b = 8) #b不能二次賦值
TypeError: test_fun() got multiple values for argument 'b'


            
          

三、函數與過程

函數: 有返回值
過程: 無返回值
Python中只有函數,沒有過程。 如果沒有return語句,默認返回None。

變量的返回值:
  • return語句用來退出函數并將程序返回到函數被調用的位置繼續執行。return語句同時可以將0個、1個或多個函數運算完的結果返回給函數被調用處的變量。
            
              >>>def func(a, b):
			return a*b
>>>s = func("knock~", 2)
>>>print(s)
knock~knock~

            
          
  • 函數可以沒有return,此時函數并不返回值。函數也可以用return 返回 多個值 ,多個值以 元組 類型保存
            
              >>>def func(a, b):
			 return b,a
>>>s = func("knock~", 2)
>>>print(s, type(s))
(2, 'knock~')
              
              
            
          

更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 天天摸天天干天天操 | 国产成人精品永久免费视频 | 国产精品久久久久久久久久一区 | 性色视频在线 | 夜夜涩| 欧美一级毛片免费看 | 久久精品美女视频 | 国产在线91精品入口 | 国产日韩高清一区二区三区 | 欧美日韩免费大片 | 深夜精品影院18以下勿进 | 色射色| 精品一区二区三区的国产在线观看 | 四虎永久免费网站入口2020 | 99热最新网站 | 手机看片一区二区 | 国产亚洲精品欧美一区 | 国产精品一区二区久久精品涩爱 | 韩国三日本三级中文字幕 | 欧美日本高清视频在线观看 | 亚洲国产综合久久精品 | 国产欧美亚洲另类第一页 | 国产成+人+综合+亚洲专 | 亚洲天堂久久久 | 国产精品99久久99久久久看片 | 91成人精品视频 | 亚洲综合色丁香麻豆 | 日本一级做人免费视频 | 亚洲欧美在线精品一区二区 | 久久综合在线 | 在线看福利影 | 日本一区二区三区久久 | 欧美福利精品福利视频在线观看 | 激情综合婷婷亚洲图片 | 日韩短视频 | 四虎影视免费 | 中国妞xxxx| 日本草草影院 | 中文精品北条麻妃中文 | 国产精品高清一区二区 | 日本在线亚州精品视频在线 |