python中函數的參數使用方法

1、位置參數

python函數中的位置參數和java函數是一個意思,比如現在我們計算2+3:

    def add(a,b):
        return a+b
        
    print add(2,3)
	
	>>5

2、默認參數

顧名思義,就是在定義函數的時候給屬性添加默認值唄

    def add(a,b=8):
        return a+b

    print add(2,3)
    print add(2)
	
	>>5
	>>10

3、可變參數

在我的理解中就是,傳入一個list或者tuple,他們是可變的,在函數中通過循環把他們的內容取出來做處理。

    def add(numbers):
        sum=0
        for i in numbers:
            sum = sum +i
        return sum

    list = [1,2,3]
    tuple = (1,2,3,4)
    print add(list)
    print add(tuple)

	>>6
	>>10

這個時候你回覺得有點麻煩,每次傳入的數據必須先要封裝成一個數組或者元組,這個時候你也可以使用“*”來簡化可變參數:

    def add1(*numbers):
        sum=0
        for i in numbers:
            sum = sum +i
        return sum

    print add1(1,2,3,4,5)
	
	>>15

4、關鍵字參數

允許你傳入0個或任意個含參數名的參數,這些關鍵字參數在函數內部自動組裝爲一個dict

def person(name, age, **kw):
    print('name:', name, 'age:', age, 'other:', kw)

>>person("ly",12)
>>name:name="ly",age=12

person('lh', 15, gender='M', job='ETL)

>>name: lh age: 15 other: {'gender': 'M', 'job': 'ETL'}

5、命名關鍵字參數

和關鍵字參數的 的區別就是提前給參數命名:但是用法是不一樣的,他是使用“”來分割參數,“”後面的參數視爲命名關鍵字參數

def person(name, age, *, city, job):
    print(name, age, city, job)

>> person('xy', 24, city='Beijing', job='doctor')
>>xy 24 Beijing doctor

6、參數組合

參數定義的順序必須是:必選參數、默認參數、可變參數、命名關鍵字參數和關鍵字參數。

def f1(a, b, c=0, *args, **kw):
    print('a =', a, 'b =', b, 'c =', c, 'args =', args, 'kw =', kw)

def f2(a, b, c=0, *, d, **kw):
    print('a =', a, 'b =', b, 'c =', c, 'd =', d, 'kw =', kw)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章