python函数参数*args**kwargs用法实例
2015-04-29 15:55
886 查看
http://www.jb51.net/article/44104.htm
python当函数的参数不确定时,可以使用*args和**kwargs。*args没有key值,**kwargs有key值,下面看例子
复制代码 代码如下:
#coding=utf8
__author__ = 'Administrator'
# 当函数的参数不确定时,可以使用*args和**kwargs。*args没有key值,**kwargs有key值
def fun_var_args(farg, *args):
print 'args:', farg
for value in args:
print 'another arg:',value
# *args可以当作可容纳多个变量组成的list或tuple
fun_var_args(1, 'two', 3, None)
#args: 1
#another arg: two
#another arg: 3
#another arg: None
def fun_var_kwargs(farg, **kwargs):
print 'args:',farg
for key in kwargs:
print 'another keyword arg:%s:%s' % (key, kwargs[key])
# myarg1,myarg2和myarg3被视为key, 感觉**kwargs可以当作容纳多个key和value的dictionary
fun_var_kwargs(1, myarg1='two', myarg2=3, myarg3=None)
# 输出:
#args: 1
#another keyword arg:myarg1:two
#another keyword arg:myarg2:3
#another keyword arg:myarg3:None
def fun_args(arg1, arg2, arg3):
print 'arg1:', arg1
print 'arg2:', arg2
print 'arg3:', arg3
myargs = ['1', 'two', None] # 定义列表
fun_args(*myargs)
# 输出:
#arg1: 1
#arg2: two
#arg3: None
mykwargs = {'arg1': '1', 'arg2': 'two', 'arg3': None} # 定义字典类型
fun_args(**mykwargs)
# 输出:
#arg1: 1
#arg2: two
#arg3: None
# 两者都有
def fun_args_kwargs(*args, **kwargs):
print 'args:', args
print 'kwargs:', kwargs
args = [1, 2, 3, 4]
kwargs = {'name': 'BeginMan', 'age': 22}
fun_args_kwargs(args,kwargs)
# args: ([1, 2, 3, 4], {'age': 22, 'name': 'BeginMan'})
# kwargs: {}
fun_args_kwargs(1,2,3,a=100)
#args: (1, 2, 3)
#kwargs: {'a': 100}
fun_args_kwargs(*(1,2,3,4),**{'a':None})
#args: (1, 2, 3, 4)
#kwargs: {'a': None}
python当函数的参数不确定时,可以使用*args和**kwargs。*args没有key值,**kwargs有key值,下面看例子
复制代码 代码如下:
#coding=utf8
__author__ = 'Administrator'
# 当函数的参数不确定时,可以使用*args和**kwargs。*args没有key值,**kwargs有key值
def fun_var_args(farg, *args):
print 'args:', farg
for value in args:
print 'another arg:',value
# *args可以当作可容纳多个变量组成的list或tuple
fun_var_args(1, 'two', 3, None)
#args: 1
#another arg: two
#another arg: 3
#another arg: None
def fun_var_kwargs(farg, **kwargs):
print 'args:',farg
for key in kwargs:
print 'another keyword arg:%s:%s' % (key, kwargs[key])
# myarg1,myarg2和myarg3被视为key, 感觉**kwargs可以当作容纳多个key和value的dictionary
fun_var_kwargs(1, myarg1='two', myarg2=3, myarg3=None)
# 输出:
#args: 1
#another keyword arg:myarg1:two
#another keyword arg:myarg2:3
#another keyword arg:myarg3:None
def fun_args(arg1, arg2, arg3):
print 'arg1:', arg1
print 'arg2:', arg2
print 'arg3:', arg3
myargs = ['1', 'two', None] # 定义列表
fun_args(*myargs)
# 输出:
#arg1: 1
#arg2: two
#arg3: None
mykwargs = {'arg1': '1', 'arg2': 'two', 'arg3': None} # 定义字典类型
fun_args(**mykwargs)
# 输出:
#arg1: 1
#arg2: two
#arg3: None
# 两者都有
def fun_args_kwargs(*args, **kwargs):
print 'args:', args
print 'kwargs:', kwargs
args = [1, 2, 3, 4]
kwargs = {'name': 'BeginMan', 'age': 22}
fun_args_kwargs(args,kwargs)
# args: ([1, 2, 3, 4], {'age': 22, 'name': 'BeginMan'})
# kwargs: {}
fun_args_kwargs(1,2,3,a=100)
#args: (1, 2, 3)
#kwargs: {'a': 100}
fun_args_kwargs(*(1,2,3,4),**{'a':None})
#args: (1, 2, 3, 4)
#kwargs: {'a': None}
相关文章推荐
- python函数参数*args**kwargs用法实例
- python函数参数*args**kwargs用法实例
- Python函数中*args和**kwargs来传递变长参数的用法
- python中的含有 *args 和**kwargs的用法 作为参数的函数,参数输入问题
- Python函数中*args和**kwargs来传递变长参数的用法
- Python定义的函数(或调用)中参数*args 和**kwargs的用法
- Python可变参数*args和**kwargs用法实例小结
- Python函数*args与**kwargs的用法
- Python中函数可变参数类型(*args、**kwargs)
- python字典(dictionary)使用:基本函数code实例,字典的合并、排序、copy,函数中*args 和**kwargs做形参和实参
- Python 函数当中的不定参数 *args 和**kwargs 姐妹花
- python字典(dictionary)使用:基本函数code实例,字典的合并、排序、copy,函数中*args 和**kwargs做形参和实参
- Python中函数的参数定义和可变参数用法实例分析
- Python可变参数函数用法实例
- Python可变参数函数用法实例
- python *args **kwargs,传入不固定的参数给函数,或者传入很多的内容给函数,常用在构造函数中。
- python函数参数中*args,**kwargs的使用和意义
- python 函数参数 *args 和 **kwargs
- 5.1 Python 函数-默认参数,*args,**kwargs的使用;作用域-局部空间使用全局变量需要注意的事项等
- Python函数可变参数*args及**kwargs详解