函數--參數及注釋


函數的傳參

參數划分

  • 形參
    • 寫在函數聲明的位置的變量叫形參,形式上的一個完整,表示這個函數需要xxx
  • 實參
    • 在函數調用的時候給參數傳遞的值叫實參
def meet(sex):		#sex:形參
    print("性別:%s"%(sex))
meet("男")			#"男":實參

def func(a:int,b:str)	#形參跟的數據類型只是個提示,沒有約束性
	pass
func(1,2)

實參

  • 位置參數
def meet(sex,old,happy):
    print("性別:%s,年齡:%s,愛好:%s"%(sex,old,happy))
meet("男",10,"籃球")

#根據參數位置,從左到右,一一對應
  • 關鍵字參數
def meet(sex,old,happy):
    print("性別:%s,年齡:%s,愛好:%s"%(sex,old,happy))
meet(sex="男",old=10,happy="籃球")

#一一對應,可以打亂順序
  • 混合傳參
def meet(sex,old,happy):
    print("性別:%s,年齡:%s,愛好:%s"%(sex,old,happy))
meet("男",10,happy="籃球")

#既有位置參數又有關鍵字參數
#位置參數要在關鍵字參數之前,否則會報錯

形參

  • 位置參數 與實參角度的位置參數是一種
  • 優先級:位置>默認值
  • 默認值參數:形參是默認參數時,實參可以不必傳遞

三元運算符

只針對if 。。。else。。。

#格式:條件成立的結果 if 條件判斷 else 條件不成立的結果

a = 1000
b = 2000
c = a if a > b else b
print(c)


def complie(a,b):
    return a if a > b else b
print(complie(10,20))

枚舉

  • 描述
    • enumerate()函數用於將一個可遍歷的數據對象(如列表、元組或字符串)組合為一個索引序列,同時列出數據和數據下標
  • 語法
    • enumerate(sequence,[strart=0])
  • 參數
    • sequence:一個序列、迭代器或其他支持迭代對象
    • start:下標起始位置
  • 返回值
    • 返回enumerate(枚舉)對象
lst = [1,2,3,4,5]
dic = {}
for k,v in enumerate(lst,10):
    dic[k] = v
print(dic)

函數的動態參數

形參的第三種參數:動態參數

  • 動態接收位置參數:*args
    • * 在函數定義的時候叫聚合
    • args 可以更改,最好保持不變
  • 位置參數>動態位置參數
def func(a,b,*args):
    print(a,b,args)
func(1,2,3,4,5,6,7)

def func(a,b,*args):	#*args:聚合
    print(a,b,*args)	#*args:打散--原數據類型
func(1,2,3,4,5,6,7)

def func(*args,a=1,b=2):
    print(a,b,*args)
func(1,2,3,4,5,6,7)
#上面這種情況關鍵字參數要放在動態參數后面

lst = [1,2,3,4,5,6]
def func(*args):
    print(*args)
func(*lst)
#傳參數的時候先打散,不做為一體傳入,在函數里再用打散可以獲取單個元素
  • 動態接收關鍵字參數:**kwargs
def func(a,b,**kwargs):
    print(a,b,kwargs)	#打印出字典,加一個*取出的是鍵,不能打散
func(1,2,c=5,d=7)

#運行結果
1 2 {'c': 5, 'd': 7}


def func(a,b,*args,c=1,d=2,**kwargs):
    print(a,b,args,c,d,kwargs)
func(1,2,3,4,5,6,7,8,e=0,f=5)


dic = {"1":2,"4":"a","3":4}
def func(**kwargs):
    print(kwargs)
func(**dic)	#先打散在傳入
  • 萬能傳參(常用)
def func(*args,**kwargs):
    print(args,kwargs)
func(1,2,3,4,5,6,a=8,b=9)
  • 形參順序

    位置參數 、*args 、默認參數 、**kwargs

函數的注釋

def func(a,b):
    """
    函數作用
    :param a: 參數說明
    :param b: 參數說明
    :return:  返回值說明
    """
    pass
    

print(func.__doc__)		#打印函數的注釋信息


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM