北京

点击搜索

发布

拉勾教育Python中函数参数args和kwargs

区域:
北京 > 海淀 > 中关村
类别:
软件工程师培训
地址:
创业大街
•      默认参数,即参数含有默认值,在调用函数时可以进行参数传递,若没有进行参数传递则使用默认值,要注意,默认参数必须在普通参数的右侧(否则解释器无法解析)。拉勾IT课小编为大家分解
•      元组参数,即 *args,参数格式化存储在一个元组中,长度没有限制,必须位于普通参数和默认参数之后。
•      字典参数,即 **kwargs,参数格式化存储在一个字典中,必须位于参数列表的后面。
ll = [2,5,6]
arg = {'name': 'js', 'gender': 'man'}

def func(*args, **kwargs):
  print('args: ')
  print(args)
  print('kwargs :')
  print(kwargs.items())

func(*ll, **arg)
args:
(2, 5, 6)
kwargs :
dict_items([('name', 'js'), ('gender', 'man')])
•      同时拥有*args和**kwarg形参的函数
def func(*args, **kwargs):
  print('args: ')
  print(args)
  print('kwargs :')
  print(kwargs.items())

func(2,4,5,name='js',gender='man')
# 没有指定 位置的参数被*arg接收,指定 位置的参数被**kwarg接收
args:
(2, 4, 5)
kwargs :
dict_items([('name', 'js'), ('gender', 'man')])
总结 :和在列表元素匹配,函数使用字典或列表参数(整理参数)和传入字典或列表参数(压缩参数)都有着重要的作用,在装饰器也经常用到,用来接收或者传入任意类型,任意数量的参数,使python语言更动态但是会降低代码可读
查看更多北京电脑/网络信息

免责声明:此信息系发布者(UID:706396)自行发布,本站是服务平台,仅提供信息存储空间服务,该信息内容的真实性及合法性由该发布者完全负责。

© lieju.com 联系我们