python 装包与解包

*args和 **kwargs的两大重要知识点:装包与解包
1、*args是用于接收多余的未命名参数,**kwargs用于接收形参中的命名参数,其中args是一个元组类型,而kwargs是一个字典类型的数据;
2、*args是把元组中的数据进行拆包,也就是把元组中的数据拆成单个数据;**kwargs是把字典中的数据进行拆包,也就是把字典中的数据拆成单个键值对;

图片.png

下面是上面程序的输出结果:


图片.png

理解这段代码需要把握住下面几点:
1.形参中的*args其实真正接收数据的args,它是一个元组,把传进来的数据放在了args这个元组中。

  1. 函数体里的args依然是那个元组,但是*args的含义就是把元组中的数据进行拆包,也就是把元组中的数据拆成单个数据。

**kwargs与上述*args同理。

图片.png
图片.png

你可能感兴趣的:(python 装包与解包)