当前位置:天才代写 > tutorial > Python教程 > 要害字参数与非要害字参数(可变参数)详解

要害字参数与非要害字参数(可变参数)详解

2017-11-03 08:00 星期五 所属: Python教程 浏览:621

学过php可能其他语言的同学都知道,php内里的参数不是个数不是可变的(只是许多时候是可以省略的,因为在函数界说的时候为参数配置了默认值)。可是在python里却不是这样,python内里运行可变参数的呈现,参数中呈现(*arg,**arg2)的形式。

本日我们来详解一下这种用法:

譬喻:

def foo1(arg1,arg2,key1=1,key2=2,*arg,**keywords):
    print "arg1 parameters is ",arg1
    print "arg2 parameters is ",arg2
    print "key1 parameter is ",key1
    print "key2 parameter is ",key2
    print "Arbitrary parameter is ", arg
    print "keywords parameter is ",keywords

foo1(1,2,3,4,5,6,k1=1,k2=2,k3=3)

输出:

arg1 parameters is  1
arg2 parameters is  2
key1 parameter is  3
key2 parameter is  4
arg parameter is  (5, 6)
keywords parameter is  {'k3': 3, 'k2': 2, 'k1': 1}

函数参数分为四部门:
arg1,arg2,key1,key2普通参数
*arg 非要害字参数列表
**keywords 要害字参数列表

函数声名部门,参数的四个部门不行颠倒位置,可以没有个中某几部门。

python函数的这种特性使得函数参数越发机动,参数个数也不受限制。

留意:这种用法常用在python的装饰器中,至于什么是装饰器,它是python内里很是重要的一个特性,我会在今后详解

 

    关键字:

天才代写-代写联系方式