Python元組和字典的拆包

象牙塔小明發表於2018-10-06

在呼叫帶有多值引數的函式時,如果希望:(1)將一個元組變數傳遞給args(2)將一個字典變數傳遞給keargs。就可以選擇拆包,簡化引數的傳遞,拆包的方式是:

  • 在元組變數前加一個星號*
  • 在字典變數前增加兩個星號**
def demo(*args, **kwargs):
    print(args)
    print(kwargs)


gl_nums = (1, 2, 3)
gl_dict = {"name": "小明", "age": 18}
demo(*gl_nums, **gl_dict)

輸出:
(1, 2, 3)
{‘name’: ‘小明’, ‘age’: 18}

如果呼叫函式變數前不使用星號:

def demo(*args, **kwargs):
    print(args)
    print(kwargs)


gl_nums = (1, 2, 3)
gl_dict = {"name": "小明", "age": 18}
demo(gl_nums, gl_dict)

輸出:
((1, 2, 3), {‘name’: ‘小明’, ‘age’: 18})
{}

相關文章