函数
函数一般用于完成一项特定的功能
定义一个函数
- def关键字
- 函数名(遵循一些命名规则)
- 函数内代码统一缩进
def func():
print("Hello World");
参数和返回值
- 参数:用于向函数传递消信息和数据
- 形参(形式参数): 在函数定义的时候用到的参数没有具体值
- 实参(实际参数): 在调用函数的时候输入的值
- 返回值:函数执行的结果
- return 关键字
- 默认返回None
- 函数执行到return,返回结果并结束函数执行
参数类型
- 普通参数
- 默认参数
- 关键字参数
- 收集参数
普通参数
- 调用的时候直接把变量或者值按顺序赋给参数
def func(parameter1, parameter2, ...):
#函数体
pass;
#调用
func(value1, value2, ...);
默认参数
- 形参带有默认值
- 调用的时候,如果没有对相应形参赋值,则使用默认值
def func(p1 = v1, p2 = v2, ...):
#函数块
pass;
#调用:用默认值
func();
#调用:传入值
func(value1, value2);
关键字参数
- 不用考虑参数位置
def func(p1 = v1, p2 = v2, ...):
#函数块
pass;
#调用
func(p1 = value1, p2 = value2, ...);
收集参数
- 将没有位置,不能和定义时的参数位置相对应的参数,放入一个特定的数据结构中
- 收集参数前需要有星号
- 有收集参数的同时也可有其他参数
- 函数中将收集参数当作List类型使用
def func(*args):
#函数块
pass;
#调用
func(value1, value2, ...);
关键字收集参数
- 把关键字参数按字典格式存入收集参数
- 调用的时候,把多余的关键字参数放入关键字收集参数
- 访问关键字收集参数需要按字典格式访问
def func(**kwargs):
#函数块
pass;
#调用
func(p1 = v1, p2 = v2, ...);
收集参数与其他参数一起调用的顺序
- func(普通参数,收集参数,关键字参数,关键字收集参数)
解包
- 将list类型传入作为收集参数
- 将dict类型传入作为关键字收集参数
def func(*args):
#函数块
pass;
#解包
l = [1, "一", "one"];
func(*l);
#关键字收集参数同理两个星号
函数文档
- 函数的文档的作用是对当前函数提供使用相关的参考信息
- 文档的写法:
- 在函数内部开始的第一行使用三引号字符串定义符
- 一般具有特定格式
- 文档查看
- 使用help函数
- 使用doc, 参看案例
def func():
'''
函数文档...
'''
pass;
#查看
help(func);
func.__doc__;