函数的定义和应用
- 针对特定功能被提前写好的可重复使用的代码段:有语言内置函数、还可以自己定义函数
- 先定义后调用,定义完函数后需要调用才能生效
- 传入参数如果不需要可以写空括号,如果返回值为空可以整行不写
定义函数:
def 参数名(传入参数):
定义函数
返回值
调用函数:
函数名(参数)
举个栗子:
我想定义一个函数,检测到温度大于35度时提醒开空调
def test_temp(x):
if x <= 35:
print("今天气温凉爽哦~")
else:
print("高温alarm,记得开空调")
函数定义好了,以后每次直接传当前的温度参数进去就好了
test_temp(28.2)
传参:形参和实参
传参指的是给函数传入参数的过程。
- 参数可以是0-n个,但是形式参数和实际参数的个数和位置需要一一对应
- 每个参数间需要用逗号隔开
形参:形式参数,在定义函数时用的参数。
实参:实际参数,在调用函数时传入的参数。
在上个栗子中,对应的形参和实参分别是什么呢?
return
- return是在函数调用完成后返回给调用者的结果,如果没写默认为None(在if判断中,none等于false。在变量初期不想赋值也可以使用none)
- return后面的后面的代码都不执行了
- 返回以后可以用变量去接收返回结果,也可以打印
这里需要强调一个return和print的区别,打印只是把数值打印出来显示,return的作用是结束和返回值。
局部变量和全局变量
- 局部变量:在函数内部层级创建的变量
- 全局变量:在外部变量使用的变量
通俗来讲,局部变量是小区红人,小区里的人都认识,但是别的省的人就不认识了,全局变量是国际巨星,不仅小区里面的人认识,外国的人也都知道。
全局变量比局部变量的层级高,如果需要在某个位置修改全局变量需要使用global字段声明为全局变量
num = 520
def out_num():
global num
num = 20
print(num)
函数嵌套
在python中函数执行是从上到下的顺序,在函数a中,执行一半需要调用函数b,则先全部执行完函数b,才会继续向下执行。