函数是一段具有特定功能的、可重用的语句组,也是一种功能的抽象,一般函数表达特定功能。有两个作用:1.降低编程难度2.代码复用。
def <函数名>(<参数(0个或多个)>):
<函数体>
return <返回值>
函数定义时,所指定的参数是一种占位符。函数定义后,如果不调用不会执行。函数定义时,参数是输入、函数体是处理、结果是输出(IPO)。
函数的调用
函数调用时要给出实际参数来替换定义的参数,并获得函数返回值。下一个问题:函数参数的个数。函数可以有参数或者是没有参数,但必须要有括号。
def <函数名>(): def fun():
<函数体> print("我是无参函数")
return <返回值>
函数定义时可以将某些参数为指定默认值,构成可选参数。
def <函数名>(<非可选参数>,<可选参数>):
<函数体>
return <返回值>
下一个问题:可变参数传递(函数定义时可以设计可变数量参数,不确定参数的总数量)
def <函数名> (<参数1>,*i):
<函数体>
return <返回值>
显而易见最后的s变量累积乘以了24所有才会得出此结果。
还有一个问题那就是函数可以进行位置传递参数也可以名称传递参数,最终得出的结果也会相同,简单了解一下。
函数的返回值
return保留字用来传递返回值,函数可以有返回值,也可以没有,可以有return,也可以没有, return可以传递0个返回值,也可以传递任意多个返回值。
局部变量和全局变量
其实很好理解,一般在函数体里面出现的变量为局部变量,那么到这里我们要思考一个问题那就是它们的作用范围,我的理解是关键所在就是看变量出现的位置,变量定义在程序的开头或者在自定义函数外,该变量作用覆盖整个程序,那么它是全局变量。局部变量通常出现在函数体内,也只在该自定义函数中起作用,函数结束后会释放。我们可以使用global保留字在函数体内调用全局变量。
局部变量为组合数据类型且未创建,等同于全局变量
以列表来举个例:
lambda函数
lambda函数是一种匿名函数,即没有名字的函数,使用Lambda保留字定义,函数名是返回结果。用于定义简单的、能够在一行内表示的函数。
<函数名> = lambda <参数>: <表达式> 等价于 def <函数名>(<参数>): <函数体> return <返回值>
冒号后面就是函数体,冒号前面的是参数,一般情况下建议使用def定义的普通函数。
f = lambda :"我是lambda函数" print(f()) 或者 f = lambda a, b: a+b print(f(5, 3))
函数这一章的大概内容都讲述完成了,如哪里讲述有误还望指出分享探讨,最后觉得有细微的帮助的小伙伴点个赞再走吧!感谢!