When the function call: a position parameter, a position arguments, argument a keyword Characteristics



'''形参
在函数定义阶段括号内定义的参数,称之为形式参数,简称形参,
相当于变量名。

'''
def func(x,y):
    if x > y:
        print(x)

    print(y)

'''实参
在函数调用阶段括号内传入的参数,称之为实际参数,简称实参,
相当于变量的值。

'''
func(1,2)

'''位置参数

位置形参:
在函数定义阶段,按照从左到右的顺序依次定义的形参,
称之为位置形参。

特点:
按照位置定义的形参,都必须被传值,多一个不行,少一个也不行。


位置实参:
在函数调用阶段,按照从左到右的顺序依次定义的实参,
称之为位置实参。

特点:
按照位置为对应的形参依次传值。

'''
'''关键字实参

在调用函数时,按照key=value的形式为指定的参数传值,
称为关键字实参。
func(y=2,x=6)

特点:
可以打破位置的限制,但仍然能够为指定的形参赋值。

注意注意!!!!!:
1、可以混用位置实参和关键字实参,但是位置实参必须在关键字实参的左边。
2、可以混用为位置实参和关键字实参,但不能对一个形参重复赋值。
func(x,y=2) #正确
func(y=2,x) #SyntaxError: positional argument follows keyword argument
func(x,x=1) #NameError: name 'x' is not defined

'''
func(1,y=2) #正确
# func(y=2,1) #SyntaxError: positional argument follows keyword argument
# func(1,x=1) #TypeError: func() got multiple values for argument 'x'









Guess you like

Origin www.cnblogs.com/ludundun/p/11517064.html
Recommended