#普通参数示例 def func(args): print(args) func(123456) #执行结果为123456 如果给多个参数,就会报错 #动态参数示例 def func(*args): print(args) func(123456,456,456,456) #执行结果为 123456,456,456,456 ,无论给多少参数,它就能传入多少参数
第二种动态参数 **a 两个星号,必须有一个key,一个vlue
def f(**a): print(a,type(a)) f(k1=123,k2='gyc')
总结:一个星号,会把所有参数转为tupe,两个星号会把参数转为dict
def f1(**kwargs): print(kwargs,type(kwargs)) dic = {"k1":123} f1(k1 = dic) #执行结果为{'k1': {'k1': 123}} <class 'dict'> f1(**dic) #执行结果为{'k1': 123} <class 'dict'>
在接收参数加*,可以吧传入的传入值整体的打印出来
不加* 它只会把值作为一个元素打印出来