Pythonの*引数&** kwargsから

*引数

* Argsの変数は、位置引数のリストです

*のArgs:パラメータのタプル(タプル)への関数呼び出しにパッケージ化

引数は、関数を呼び出します

def test1(*args):
    print(args)
    print(*args)
    test2(args)
    test2(*args)


def test2(*args):
    print(args)


if __name__ == '__main__':
    test1('a', 'b', 'c')

出力

('a', 'b', 'c')
a b c
(('a', 'b', 'c'),)
('a', 'b', 'c')

だから、*args3つの文字列: 'A'、 'B' 、C ''は
args3つのタプル:( 'A'、 'B'の文字列で満たされている 、 'C')

** kwargsから

**変数キーワード引数リストkwargsから
の辞書(dictの)関数呼び出しにパックパラメータ:** kwargsから
機能による通話をkwargsから
例:

def test1(**kwargs):
    print(kwargs)
    test2(kwargs=kwargs)
    test2(**kwargs)


def test2(**kwargs):
    print(kwargs)


if __name__ == '__main__':
    test1(a='a', b='b', c='c')

出力

{'a': 'a', 'b': 'b', 'c': 'c'}
{'kwargs': {'a': 'a', 'b': 'b', 'c': 'c'}}
{'a': 'a', 'b': 'b', 'c': 'c'}

そう**kwargs= {A = ''、 B = 'B'、C = 'C'}
**kwargs直接ないprintアウト
kwargs= { 'A': 'A '、 'B': 'B'、 'C'「C 「}

概要

内部関数は、他の*引数やパラメータの関数として** kwargsから、*引数または** kwargsからかkwargsから代わりに引数でなければなりませんパラメータを渡すに呼び出すと
三つのパラメータがなければなりませんパラメータの引数、引数*、** kwargsから位置それは確かです。それは(引数、引数*、** kwargsからでなければならない ) それ以外のプログラムが文句を言うだろう、この順に

おすすめ

転載: www.cnblogs.com/dbf-/p/11606188.html
おすすめ