ITPub博客

首页 > > > 带你理解Python 中你须知道的知识点:*args 和 **kwargs

带你理解Python 中你须知道的知识点:*args 和 **kwargs

作者:westwolf 时间:2019-09-27 10:44:30 0 删除 编辑

我爱学Python



Python是支持可变参数的,最简单的方法莫过于使用默认参数,例如:

当然,本文章的主题并不是讲默认参数,而是另外一种达到可变参数 (Variable Argument) 的方法:使用*args和**kwargs语法。其中,*args是可变的positional arguments列表,kwargs是可变的keyword arguments列表。并且,*args必须位于kwargs之前,因为positional arguments必须位于keyword arguments之前。

首先介绍两者的基本用法。

下面一个例子使用*args,同时包含一个必须的参数:

下面一个例子使用kwargs, 同时包含一个必须的参数和args列表:

args和**kwargs语法不仅可以在函数定义中使用,同样可以在函数调用的时候使用。不同的是,如果说在函数定义的位置使用args和**kwargs是一个将参数pack的过程,那么在函数调用的时候就是一个将参数unpack的过程了。下面使用一个例子来加深理解:

使用*args和**kwargs可以非常方便的定义函数,同时可以加强扩展性,以便日后的代码维护。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4662/viewspace-3167989/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-07-26

  • 博文量
    307
  • 访问量
    21681