请阐述fun()函数arg,*arg,**kwarg三种格式参数的作用
时间: 2023-09-28 15:04:18 浏览: 78
python参数传递的*args和**kwargs
好的,针对您的问题,我来为您解释一下:
在Python中,函数的参数分为三类:位置参数、默认参数和关键字参数。在函数定义时,可以使用以下三种格式参数:
1. 位置参数:位置参数指的是按照位置顺序传入函数的参数。函数中的参数名和调用函数时的参数名保持一致。例如下面的代码:
```
def fun(arg1, arg2):
print(arg1, arg2)
fun('hello', 'world')
```
在上面的代码中,'hello'和'world'是按照位置顺序传入函数fun中的两个位置参数arg1和arg2。
2. *arg:*arg是用来传递一个非键值对的可变数量的参数列表。在函数定义时,在参数前面加上一个 * 号,表示接受任意数量的位置参数,并将它们存储为一个元组。例如下面的代码:
```
def fun(*args):
for arg in args:
print(arg)
fun(1, 2, 3, 4)
```
在上面的代码中,fun函数接受任意数量的位置参数,并将它们存储在args元组中。
3. **kwarg:**kwarg是用来传递一个字典作为关键字参数。在函数定义时,在参数前面加上两个 * 号,表示接受任意数量的关键字参数,并将它们存储为一个字典。例如下面的代码:
```
def fun(**kwargs):
for key, value in kwargs.items():
print(key, value)
fun(name='Tom', age=20, gender='male')
```
在上面的代码中,fun函数接受任意数量的关键字参数,并将它们存储在kwargs字典中。
希望这个解释对您有所帮助。
阅读全文