函数定义:
def 函数名 (形参列表):
语句块
作用:
创建一个函数,把函数内的语句块打包为一个函数,用函数名绑定
函数调用:
函数名(实参列表)
函数说明:
函数外部无法访问函数内部的局部变量
函数内部可以访问函数外部的变量,但不能修改函数外部变量的绑定关系
return语句
语法:
return [表达式] 注:[]代表内容可以省略
作用:
用于函数中,结束当前的函数的执行,返回到调用该函数的地方,
同时返回表示的引用关系
说明:
return语句后跟的表达式可以省略,省略后相当于return None
如果函数内没有return语句,则函数执行完最后一条语句后返回None(
相当于在最后加了一条 return None语句)
函数的参数传递:
传递方式:
位置传参
序列传参
关键字传参
字典关键字传参
说明:
位置传参:
实际传递参数(实参)与形式参数(形参)的对应关系按位置来依次对应
序列传参:
序列传参是指在函数调用过程中用
" * "将序列拆解后按位置进行传递的传参方式
关键字传参:
关键字传参是指在传参时,按着形参的名称给形参赋值
实参和形参按名称进行匹配
字典关键字传参:
是指实参为字典,将字典用
" ** "拆解后进行关键传参的传参方式
说明:
字典的键名和形参名必须一致
字典的键必须为字符串(且必须为标识符的规则)
关键的键名要在形参中存在
示例:
函数的综合传参:
函数的传参方式在能确定形参能唯一匹配到实参的情况下可以任意组合
要求:
位置传参在前,关键字传参在后
示例:
函数的定义和创建时形参的定义
函数的缺省参数
语法:
def 函数名(形参名1=默认实参1,形参名2=默认实参2...)
说明:
缺省参数必须自右至左依次存在,如果一个参数有缺省参数,
则其右侧的所有参数都必须有缺省参数
缺省参数可以有0个或者多个,甚至全部是缺省参数
函数形参的定义方式:
位置形参
星号元组形参
命名关键字形参
双星号字典形参
位置形参:
语法:
def 函数名(形参1, 形参2,..)
语句块
星号元组形参:
语法:
def 函数名(*元组形参名):
语句块
作用:
收集多余的位置传参
命名关键字形参:
语法:
def 函数名(*, 命名关键字形参):
语句块
或
def 函数名(*args,命名关键字形参):
语句块
作用:
强制所有的传参都必须用关键字传参
双星号字典形参:
语法:
def 函数名(**字典形参名):
语句
作用:
收集多余的关键字传参