函数
1.Python的函数是由def
语句编写。Python中,函数也是一种对象类型
def
是一个可执行语句。Python与行了def
语句后函数对象才存在,之前该函数对象不存在- Python运行到
def
语句时,它将会生成一个新的函数对象,并将该函数对象赋值给这个函数名。函数名成了这个函数对象的引用 lambda
表达式创建一个函数对象并返回它,但是它并没有绑定一个名字即它是匿名的没有函数名return
语句将一个结果对象发送给调用者yield
语句使得函数成为一个生成函数
2.函数参数没有任何类型约束,返回类型也没有任何类型约束
3.Python函数定义语句:
def func_name(arg1,arg2):
statement
在执行完def
语句时,Python创建一个函数对象并将它赋值给func_name
变量。
return
语句是可选的。若无return
,则默认自动返回None
对象def
语句可以出现在任何语句可以出现的地方,甚至是嵌套在其他语句中。- 与C语言不同,Python函数在程序运行之前不需要全部定义。
def
在它定义的地方时才评估,而def
的之内的代码在函数调用的时候才求值。
4.函数仅仅是对象类型,函数名也仅仅是变量名,它们没有任何特殊之处。
- 函数对象有函数调用方法
operator ()
- 函数对象允许任意的属性添加
func.attr=value
5.函数主体内的代码直到函数被调用时才运行。函数内的变量名在函数实际执行之前都不会解析。