python *args *kwargs

it2022-05-05  212

python *args *kwargs def foo(*args, **kwargs): print 'args = ', args print 'kwargs = ', kwargs if __name__ == '__main__': foo(1, 2, 3, 4) foo(a=1, b=2, c=3) foo(1, 2, 3, 4, a=1, b=2, c=3) foo('a', 1, None, a=1, b='2', c=3) args = (1, 2, 3, 4) kwargs = {} --------------------------------------- args = () kwargs = {'a': 1, 'c': 3, 'b': 2} --------------------------------------- args = (1, 2, 3, 4) kwargs = {'a': 1, 'c': 3, 'b': 2} --------------------------------------- args = ('a', 1, None) kwargs = {'a': 1, 'c': 3, 'b': '2'} ---------------------------------------

这两个是python中的可变参数。*args表示任何多个无名参数,它是一个tuple;**kwargs表示关键字参数,它是一个dict。并且同时使用*args和**kwargs时,必须*args参数列要在**kwargs前.

posted on 2016-07-08 11:31 北京涛子 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/liujitao79/p/5652821.html


最新回复(0)