#### 函数的定义:
'''
def 函数名(参数):
函数体
'''
# return [表达式] 用来结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。
#### 函数的调用(执行)
# 调用的格式: 函数名()
#自定义一个函数,并调用(函数必须先定义,后调用)
def my_func():
print("hello python")
my_func()
#<<< hello python
##### 函数的参数(形式参数、实际参数)#####
#在函数名中定义一个形参,然后在函数调用的时候,给函数名中的形参传递一个实际的参数,这个就变为实参。
## 定义一个带形参的函数
# 形参: 没有实际的值,通过别人赋值后才有意义,可以理解为变量。
# 格式: def 函数名(形参1, 形参2, ...):
def my_func(a, b):
sum = a + b
print(sum)
## 执行一个带实参的函数
# 实参: 是一个实际存在的参数,可以是字符串或数字等。
# 格式: 函数名(实参1, 实参2,...)
my_func(1212, 1111) #在调用函数时,实参把值传递给形参,然后执行函数体。
#<<< 2323
##### 函数的返回值 return语句 #####
# 函数中 return语句的作用:1返回函数执行的结果;2结束函数。
# 如果自定义函数不需要返回任何东西,就不用return。
# 定义带return的函数
def sum(a,b):
total = a + b
return total
#调用
print(sum(2,3)) #使用print()打印出函数的返回值;
#<<< 5
# 定义不带return的函数
def sum(a,b):
total = a + b
#调用并打印出返回值
print(sum(2,3)) #sum()函数不带return,调用时 默认返回None
#<<< None
#定义带多个return的函数
def my_func(score):
# 对分数进行判断
if score >= 80 :
return "优秀"
if score >= 60 and score <80 :
return "良好" #只要有一个return执行力,便不再执行下面的
else :
return "不及格"
# #调用
ret = my_func(66)
print(ret)
#<<< 良好
##### 变量作用域(全局变量、局部变量)#####
## 局部变量:
# 定义在函数内部的变量 叫做局部变量
# 局部变量的作用域(使用范围)在函数的内部,在函数的外部无法使用
# 在函数内部定义的局部变量名可以和其他函数中的局部变量名相同,是不冲突的
## 全局变量:
# 定义在函数的外部的变量 叫做全局变量
# 全局变量的作用域(是在整个模块内使用)
num = 10 # 全局变量
def my_func1():
num = 20 #局部变量
return num
print("局部变量:",my_func1()) #当局部变量名 和全局变量名 相同时,局部变量优先于全局变量。
print("全局变量:", num)
#<<< 局部变量 20
#<<< 全局变量 10