以下内容主要摘自:
https://blog.csdn.net/yilovexing/article/details/80577510 (* 和 **区别)
https://blog.csdn.net/yilovexing/article/details/80576788(序列解包)
(1)算数运算
* 乘法 ** 乘方 等同于 pow(a,b)
a,b = 2,3
print(a*b) # 6
print(a**b) # 8
(2)函数形参
*args 表示任何多个无名参数,把接收到的参数形成一个元组,本质是一个 tuple
**kwargs 表示关键字参数,它本质上是一个 dict
同时使用 *args 和 **kwargs 时,必须 *args 参数列要在 **kwargs 之前
(3)函数实参
若函数的形参是定长参数,也可以使用 *args 和 **kwargs 调用函数,类似对元组和字典进行解引用。
(4)序列解包
序列解包只有*,**没有这个作用。(序列解包是 Python 3.0 之后才有的语法)
序列解包的就是问题方便处理,在多重赋值时,用于接收的变量数不等于list等赋值时候可以用。
a,b,*c = [1,2,3,4]
'''
a=1,b=2,c=[3,4]'''