python關鍵字和非關鍵字引數(可變長引數)

2021-07-29 23:26:01 字數 941 閱讀 8764

可變長引數存在的意義是:每次呼叫乙個函式處理不同量的引數輸入。即,引數在呼叫之前輸入的引數數量是未知的,或者多次呼叫該函式,每次的引數輸入的量是不一致的;

可變長引數分為非關鍵字和關鍵字型別,分別對應元組和字典,如下定義乙個類,功能是列印出輸入的函式:

>>> class test:

def keyword(self,a,b,*non_keyword,**keyword):

print('a is ',a)

print('b is ',b)

print('non_keyword',non_keyword)

for key in keyword:

print("'%s':%s" % (key,str(keyword[key])))

>>> test = test()

>>> dis = test.keyword('a','b',('c','d'),e='e',f='f')

a is a

b is b

non_keyword (('c', 'd'),)

'e':e

'f':f

以上的輸入時一次輸入的情形,當再次呼叫,輸入不同的數量的引數時,依然可以列印出:

>>> test0 = test()

>>> dis0 = test0.keyword('a','b',('c','d','c0','c1','d0','d1'),e='e',f='f',g='g',h='h')

a is a

b is b

non_keyword (('c', 'd', 'c0', 'c1', 'd0', 'd1'),)

'h':h

'e':e

'f':f

'g':g

所以可變長引數輸入具有一定的靈活性,更利用應對不同場景。

this關鍵字和super關鍵字

this關鍵字和super關鍵字都必須放在構造方法的第一行,所有兩個關鍵字不能同時存在,任選其一即可,只需保證子類的所有構造方法呼叫父類的構造方法即可 this關鍵字的應用 this關鍵字用於區分區域性變數和成員變數的同名問題 有this關鍵字的是成員變數,或者是誰呼叫我,訪問的就是誰 this關鍵...

new關鍵字 this關鍵字 base關鍵字

使用new,所做的三件事 1.類是引用物件,引用物件是在堆中開闢空間 在堆中開闢空間 2.在開闢的堆空間中建立物件 3.呼叫物件的構建函式 4.隱藏父類成員 子類的成員可以與隱藏從父類繼承的成員,類似於重寫。public new void sayhello this關鍵字的使用 1.代表當前類的物件...

非關鍵字引數和關鍵字引數 args kw

這兩個引數的存在是方便在呼叫函式的時候可以靈活的傳參 def count numbers sum 0 for n in numbers sum sum n n return sum count 1,2,3 14 count 1,3,5,7 84如果已經有乙個list或者tuple,要呼叫乙個可變引數...