python function parameter(1)

本文深入探讨Python中*args与**kwargs的用法,解释如何使用关键字参数传递不确定数量的参数,以及它们在函数调用中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在阅读官方文档后我们看到一下一句话:

modelB = TheModelBClass(*args, **kwargs)

我只知道在方法里的参数使用" * “代表关键字参数,但是” ** "是什么意思,今天我就来分享一下

什么是关键字参数:

关键字参数是允许你传入0个或任意个含参数名的参数,我们开函数的时候有时候添加一些功能并不知道要添加多少个参数或者有些参数可以输入也可以忽略,这时候关键字参数就可以帮上忙了。我们要注意的是,添加关键字参数一定要放在输入参数的最后,不然编译器不知道哪个是关键字参数。我们举个例子:

def keyword_parameter(a=0,b=0,*c):
    print(a)
    print(b)
    print(c)

keyword_parameter(1,2)
print("----分割线-----")
keyword_parameter(4,5,6,7)

运行结果
我们来看一下运行结果第一次我们没有给c赋值,所以输出是个空元组,第二次我们给c赋值6,7于是这些关键字参数在函数内部自动组装为一个元组。值得注意的是如果我们直接赋值给c是不允许的。如:

keyword_parameter(4,5,c=6,7)


接下来们看一下" ** "

def keyword_parameter(a=0,b=0,**c):
    print(a)
    print(b)
    print(c)

keyword_parameter(1,2)
print("----分割线-----")
keyword_parameter(4,5,x='x',y='y')


在这里插入图片描述
" ** "关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict所以输入x=‘x’,y=‘y’。值得注意的是输入的关键字参数会自动打包成一个字典,所以我们要输入相应对的映射,否则输入错误如

keyword_parameter(4,5,6,7)//这是不正确的输入
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值