python函数的参数

关键字参数:

按照形参位置传入的参数被称为位置参数,如果使用位置参数的方式来传入参数值,则必须严格按照定义函数时指定的顺序来传入参数值,如果根据参数名来传入参数值,则无需遵守定义形参的顺序,这种方式被称为关键字参数。

>>> def mianji(length,width):
print(‘长度:‘,length)
print(‘高度:‘,width)
return width*length

>>> print(mianji(3,2))   #根据位置传入参数值
长度: 3
高度: 2
6
>>> print(mianji(length=6,width=3)) #根据关键字参数传入参数值
长度: 6
高度: 3
18
>>> print(mianji(width=4,length=8)) #使用关键字参数传入是可以变换位置
长度: 8
高度: 4
32
>>> print(mianji(3.4,width=3)) # 部分使用关键字参数,部分使用位置参数
长度: 3.4
高度: 3
10.2
>>> print(mianji(3.4,length=3)) #3.4对应的是位置参数:length,则后面的length冲突。
Traceback (most recent call last):
File "<pyshell#47>", line 1, in <module>
print(mianji(3.4,length=3))
TypeError: mianji() got multiple values for argument ‘length‘

>>> print(mianji(width=3,3.2))#关键字参数必须位于位置参数之后
SyntaxError: positional argument follows keyword argument

参数默认值

在某些情况下,程序需要在定义函数时为一个或者多个形参指定一个默认值,这样在调用函数时就可以省略为该形参传入参数值。而是直接使用形参的默认值。

>>> def message(name,age,sex=‘boy‘):
print(name,‘,你好‘)
print(age,sex)


>>> message(name=‘kity‘,age=22) #此时没有传入sex参数值,但是默认为boy
kity ,你好
22 boy

相关推荐