1. 程式人生 > 其它 >Python-函式-引數型別(關鍵字、預設、不定長)

Python-函式-引數型別(關鍵字、預設、不定長)

一、引數型別:

1、如引數為資料型別(nummber),str,則函式體中不可修改引數值 2、如引數為set,list,dict,則函式體中可修改引數值

二、引數基本型別分為:必需引數、關鍵字引數,預設引數,不定長引數

  1. 必需引數: 須以正確的順序傳入函式,呼叫時引數數量必須和宣告時一樣。

必須引數函式例項:
def myfunc(str):
  print(str)
  return
 
myfunc('aaa')

  

  2.關鍵字引數:允許函式呼叫時引數順序與宣告不一致,因為直譯器會根據引數名去匹配引數值的

關鍵字函式例項:

def myfunc(name,age):
    
print('name',name) print('age',age) myfunc(age=18,name='zhangsan')

  3.預設引數:呼叫函式時,如果沒有傳遞引數,則會使用預設引數

def myfunc(name ,age=18):
    print('name',name)
    print('age',age)
 
myfunc('cc')

  4.不定長引數:引數的個數不能確定,可能你需要一個函式來處理比當初宣告更多的引數,這些引數就叫做不定長引數,跟上述引數不同,宣告時不會命名

  • 加了星號*的引數以元組的形多匯入,存放所有未命名的變數引數
  • 引數帶兩個星號**的引數以字典的形式匯入
  • *可以單獨出現,但是呼叫時必須用關鍵字傳入,如*穿插在引數中間,則*後面的引數要以關鍵字傳入
例一:
def myfunc(*info):
    print(info)
    print(type(info))      #class(tuple)


myfunc('',19,'上海')

例二:
def myfunc(**info):
    print(info)

myfunc(name = '張三',age = 19)   #取值則通過表示式key,value的方式取值,即info['name']

例三:
def sum(num1,num2,*, num3):
    
return num1 + num2 + num3 print(sum(1,2,num3 = 3)) #執行結果為6
三十六般武藝,七十二般變化,修練出個人品牌併發出光芒