python中5种参数类型 1, 必选参数
1
2
3
def parameters (key1,key2) :
print (key1,key2)
parameters("val1" ,"val2" )
打印: ('val1', 'val2')
2, 默认参数
1
2
3
def parameters (key1,key2='val2' ) :
print (key1,key2)
parameters('val1' ,'test' )
打印: ('val1', 'test')
定义默认参数,调用时可缺省调用。
1
方法调用: parameters('val1' )
打印: ('val1', 'val2')
3, 可变参数:(顾名思义,即参数的个数可变)
在调用时 可变参数在函数体内当成一个tuple类型处理
1
2
3
def parameters (key1,*key2) :
print (key1,key2)
parameters('val1' ,'val2' ,'val3' ,'val4' )
打印:('val1', ('val2', 'val3', 'val4'))
4, 关键字参数
调用时 key2 在函数体内被当成dictionary处理 传入参数时,应当传入一个dictionary类型。调用函数时可只传必选参数,也可以传入任意多个关键字参数,其中关键字会在函数内部会被当做key来处理。
1
2
3
def parameters (key1,**key2) :
print (key1,key2)
parameters('val1' ,dictKey='dictValue' )
打印:('val1', {'dictKey': 'dictValue'})
如果有多个关键字参数时,我们可以把这些关键字参数放在一个dictionary里面传给关键字参数。
1
2
dict = {'dictKey' :'dictValue' }
parameters('val1' ,**dict)
打印:('val1', {'dictKey': 'dictValue'})
5, 命名关键字参数
python3.0版本以下 无此定义
1
2
3
4
def parameters (key1,key2,*,key3,key4) :
print (key1,key2,key3,key4)
parameters('val1' ,'val2' ,key3='val3' ,key4='val4' )
打印: val1 val2 val3 val4
学习笔记整理来自 廖雪峰的个人网站