什么是Python中的 ** (双星号) 和 * (星号) 参数?

什么是Python中的 ** (双星号) 和 * (星号) 参数?

在Python函数中,带有单星号(*)前缀的参数有助于接收来自调用环境的可变数量的参数。

>>> def function(*arg):
      for i in arg:
        print (i)

>>> function(1,2,3,4,5)
1
2
3
4
5

在函数定义中使用带有双星号(**)的参数,当必须传递变量数量的关键字参数时使用。

>>> def function(**arg):
      for i in arg:
        print (i,arg[i])

>>> function(a=1, b=2, c=3, d=4)
a 1
b 2
c 3
d 4

Python 3中,可以在赋值语句中使用带有星号的变量来启用可迭代物的扩展解包。

>>> a,*b=[1,2,3,4]
>>> a
1
>>> b
[2, 3, 4]
>>> a,*b,c=[1,2,3,4]
>>> a
1
>>> b
[2, 3]
>>> c
4

更多Python相关文章,请阅读:Python 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程