PYTHON 函数的动态参数

#普通参数示例
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'> 

在接收参数加*,可以吧传入的传入值整体的打印出来

不加*  它只会把值作为一个元素打印出来

原文地址:https://www.cnblogs.com/zgyc/p/6225152.html