以名称作为一一对应的参数传入方式被称作是关键词参数。
def area(base_up, base_down, height):
return 1 / 2 * (base_up + base_down) * height
填入的参数1,2,3分别对应着参数base_up,base_down和height,这种传入参数的方式被称作为位置参数。
area(1,2,3)
#关键词参数,不影响函数正常运作
area(height=3, base_down=2, base_up=1) #RIGHT
#函数参数反序传入,但是到了第三个却变成了位置参数。按照位置来传入,最后一个应该是参数height的位置。但是前面height已经按照名称传入了值3,所以是冲突的。
area(height=3, base_down=2, 1) #WRONG
#前两个是以关键词的方式传入,最后一个以位置参数传入。
area(base_up=1, base_down=2, 3) #RIGHT
#前面两个以位置的方式传入,最后一个以关键词参数传入。
area(1, 2, height=3) #RIGHT
def area(base_up, base_down, height = 15):
return 1 / 2 * (base_up + base_down) * height
传入两个参数就可以正常运行
直接传入三个值也可以
area(1, 2) #RIGHT
area(1, 2, 3) #RIGHT
area(1,2, height = 15) #RIGHT