python中*args和**args的不同

上一段代码,大家感受一下

def test_param(*args):

  print(args)

def test_param2(**args):

  print(args)

test_param(‘test1‘,‘test2‘)

>>>(‘test1‘,test2‘)

test_param2(p1=‘test1‘,p2=‘test2‘)

>>>{‘p1‘:‘test1‘, ‘p2‘:‘test2‘}

python提供了两种特别的方法来定义函数的参数:

1. 位置参数 *args,  把参数收集到一个元组中,作为变量args
  def show_args(*args):   =>  how_args("hello", "world")

2. 关键字参数 **kwargs, 是一个正常的python字典类型,包含参数名和值
  def show_kwargs(**args):  = > show_kwargs(foo="bar", spam="eggs")

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。