1、定义阶段只检测语法,不执行代码
2、函数返回值return返回值没有任何类型限制,返回多个数据需要用元组包上return({'a':1,1,'a',[1,2]})return的效果有终止函数的执行,只能返回一次值
3、形参与实参def func(x,y): 形参func(1,2) 实参
4、位置参数按照从左到右的顺序依次定义的参数,按位置定义的形参,必须被传值,多一个不行,少一个也不行按位置定义的实参,与形参一一对应
5、关键字参数:实参定义时,按照key=va盟敢势袂lue形式定义关键字参数可以不用像位置实参一样与实参一一对应,指明道姓地传值注意问烙疋艘烯题一:位置实参必须在关键字实参的前面注意问题二:实参的形式既可以用位置实参又可以是关键字实参,但是一个形参不能重复传值
6、默认参数(形参):在定义函数阶段,就已经为形参赋值,定义阶段有值,调用阶段可以不用传值默认参数注意的问题一: 参数必须放在位置形参后面默认参数注意的问题二:默认参数通常要定义成不可变类型默认参数注意的问题三:默认参数只在定义阶段被赋值一次
7、可变长参数:可变长指的是实参的个数不固定按位置定义的可变长度的实参: *按关键字定义的可变长度实参: **
8、命名关键字参数: 定义在*后面的形参,这类形参,必须被传值,而且要求实参必须是以关键字的形式来传值