args在python中什么意思,*args和**kwargs在Python中的作用

Python部落组织翻译,禁止转载,欢迎转发。

Hi,伙计们。我发现Python新手们在理解*args和**kwargs这两个魔法变量时都有些困难。他们到底是什么?首先,我先告诉大家一个事实,完整地写*args和**kwargs是不必要的,我们可以只写*和**。你也可以写*var和**vars。写*args和**kwargs只是一个大家都遵守的习惯。那现在让我们从*args讲起。

*args的使用

*args和**kwargs通常使用在函数定义里。*args and **kwargs允许你给函数传不定数量的参数。“不定量”意味着你在定义函数的时候不知道调用者会传递几个参数进来。*args能够接收不定量的非关键字参数。下面这个例子能够说明这一点

f821443cae2ed20c9f5e0cb4f658c9f9.png

这个例子产生下面的结果

32b1c01b0c0883461247538592333c44.png

这样应该就解释的比较清楚了,接下来我们来说明**kwargs

**kwargs的使用

**kwargs允许你传递不定量个关键字参数。如果你需要在函数中定义不定量个命名参数,那么你就要使用**kwargs了。下面是一个例子来演示这种用法:

3a0bd413da63c4e1eb09562f10b3187e.png

这个例子中我们处理了一些关键字参数。这是**kwargs的基本用法,可以看出**kwargs很有用。接下来让我们说明使用*args和**kwargs来在调用函数时,给函数传递“一个列表的参数”,或者“一个字典的参数”。

使用*args和**kwargs来调用一个函数

下面我们介绍如何使用*args和**kwargs来调用一个函数,假设你有这样一个函数。

63b4004020bc436dca7a3a4e6f08e851.png

下面我们使用*args和**kwargs来给这个函数传递参数,我们可以这样做:

2714df3e60688b9a263116d2baaf0ed2.png

*args和**kwargs以及普通参数的使用顺序

如果你想同时使用这三种参数,那么它们之间的顺序是

3472696443c76470b54c99ff91c4884f.png

到此为止*args和**kwargs的用法就讲完了,希望对你有所帮助

译者:诗书塞外

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值