Python可变参数*args和*kwargs介绍
程序员文章站
2022-05-29 13:18:23
1. *args表示非关键字参数
def demo_1(*args):
print(args)
demo_1(1,2,3)
函数的输出为:
(1, 2,...
1. *args表示非关键字参数
def demo_1(*args): print(args) demo_1(1,2,3)
函数的输出为:
(1, 2, 3)
可以看出args表示的是一个元组
其简单应用可以看下例:
def test_var(formalarg,*args): print("formal_arg:",formalarg) for arg in args: print("var_arg:",arg) test_var(1,2,3,4)
输出的结果为:
formal_arg: 1 var_arg: 2 var_arg: 3 var_arg: 4
2. **kwargs表示非关键字参数
def demo_2(**kwargs): print(kwargs) demo_2(k=1,w=2)
函数的输出为:
{'k': 1, 'w': 2}可以看出kwargs表示的是一个字典
其简单应用如下例:
def test_var(formalarg,**kwargs): print("formal_arg:",formalarg) for k,v in kwargs.items(): print("%s=>%s"%(k,v)) test_var(1,a=1,b=2,c=3)
输出为:
formal_arg: 1 a=>1 b=>2 c=>3
3. 变长参数还可以在函数调用的时候使用
如下例:
def test_var_args_call(arg0,arg1, arg2, arg3): print("arg0:",arg0) print("arg1:", arg1) print("arg2:", arg2) print("arg3:", arg3) args=(1,2) kwargs={"arg3":3} test_var_args_call(0,*args,**kwargs)
输出为:
arg0: 0 arg1: 1 arg2: 2 arg3: 3
上一篇: python转义字符介绍
下一篇: 教你如何静默安装ORACLE
推荐阅读