Python可变长度的参数
来源:互联网 发布:诚信买卖宝源码 编辑:程序博客网 时间:2024/04/30 05:42
Python中定义的函数参数列表可以很神奇,主要是有非关键字可变长参数和关键字变量参数。
非关键字可变长参数
首先我们定义如下函数:
def tuple_var_args(arg1,arg2='default arg2',*vargs_tuple): print 'format arg1:',arg1 print 'format arg2:',arg2 for arg in vargs_tuple: print 'another arg:',arg
然后就可以按照如下方式调用:
tuple_var_args('arg1')tuple_var_args('arg1','arg2')tuple_var_args('arg1',arg2='arg2')tuple_var_args('arg1','arg2','arg3')tuple_var_args('arg1','arg2',*('arg3',))tuple_var_args('arg1',*('arg3',))#这里arg3传递给arg2
关键字变量参数
首先定义如下函数
def dict_var_args(arg1,arg2='default arg2',**vargsd): print 'format arg1:',arg1 print 'format arg2:',arg2 for arg in vargsd: print 'another arg:',arg调用方式如下:dict_var_args('arg1')dict_var_args('arg1','arg2')dict_var_args('arg1',arg2='arg2')dict_var_args('arg1','arg2',arg3='arg3')dict_var_args('arg1',arg3='arg3')dict_var_args(1,**{'foo':4,'bar':5}) dict_var_args(**{'arg1':1,'foo':4,'bar':5})混合使用
定义如下函数
def tuple_dict_var_args(arg1,arg2='default arg2',*tuple_args,**vargsd): print 'format arg1:',arg1 print 'format arg2:',arg2 for t_arg in tuple_args: print 'another no-key arg:',t_arg for arg in vargsd: print 'another key arg:',arg调用方式如下:
tuple_dict_var_args(1,2,3,4,5)#3,4,5传给*tuple_argstuple_dict_var_args(1,*(1,2,3,45),a=1,b=2)tuple_dict_var_args(1,*(1,2,3,45),**{'a':'a','b':'b'})
0 0
- Python可变长度的参数
- 【转】Python可变长度的函数参数
- 【飘逸的Python】 传递可变长度参数
- 可变长度参数的实现
- JAVA 可变长度的参数
- python的可变参数
- java中可变长度参数的应用
- 深入了解JAVA可变长度的参数
- JavaScript 可变长度参数函数的定义
- 学会JAVA可变长度的参数(Varargs)
- Java可变长度的参数——...
- Python中如何使用*args 和 **kwargs (非keyworded,可变长度参数列表 keyworded形式可变长度的参数列表)
- 长度可变参数
- params 长度可变参数
- 可变长度参数
- java可变长度参数
- Scala可变长度参数
- Java 可变长度参数
- 6.数据结构的实现-排序
- 天勤模拟赛1 二叉树问题
- 网络新名词
- java的保留字及关键字
- Java 程序里的内存泄漏
- Python可变长度的参数
- PHP中定义 $image[]=array(); 声明了一个成员的空数组
- 当年第几天
- 天勤模拟赛1 朋友圈
- Accept-Encoding
- HDU-OJ-2089 A 不要62
- git命令
- 高内聚低耦合
- x-requested-with 请求头 区分ajax请求还是普通请求