什么是函数
函数就是具备某种性能的工具, 函数的应用必须遵循 先定义后调用 的准则
为什么要应用函数
- 优化代码组织构造, 晋升代码可读性
- 缩小代码冗余, 晋升代码书写执行效率
- 便于保护, 便与扩大
如何应用函数
- 先定义
- 后调用
定义函数的三种模式
- 模式一: 无参函数
def func():
print("Hello World")
func()
- 模式二: 有参函数
def func(a, b):
print(a + b)
func(1, 2)
- 模式三: 空函数
# 构思函数时应用, 相似于占位符
def func():
pass
留神:
函数名命名标准等同于变量名命名标准
调用函数的三种模式
- 模式一: 语句模式(只调用函数)
def add(x, y):
res = x + y
return res
add(3, 4)
- 模式二: 表达式模式
def add(x, y):
res = x + y
return res
# 赋值表达式
res = add(3, 4)
print(res)
# 数学表达式
res = add(3, 4) * 10
print(res)
- 模式三: 参数模式
def add(x, y):
res = x + y
return res
add(add(1, 2), 10)
函数返回值
return
是函数完结的标记, 即函数体代码一旦运行到 return
会立刻终止函数的运行, 并且会将 return
后的值当做本次运行后果返回
返回 None
函数体内没有 return 或者只有 return
或者是return None
def func():
# return
# return None
pass
res = func()
print(res)
返回一个值
def func():
return "Hello World"
res = func()
print(res)
返回多个值
def func():
return "Hello", "This", "World"
res = func()
# 返回后果为元组类型
print(res)
总结
函数定义时产生的事件:
- 申请内存空间, 保留函数体代码
- 绑定函数名与内存地址
- 定义函数不会执行函数体代码
- 函数定义过程中, 会检测函数体语法
调用函数时产生的事件:
- 通过函数名找到该函数对应的内存地址
函数名 ()
就是在触发函数体代码执行