函数的定义与调用
定义函数的语法
'''
def 函数名():
"""函数注释""" 函数相当于工具,注释相当于工具的说明书
code
使用阶段 调用函数
函数名()
def func()
"""func函数的注释"""
#todo:未来要写的函数
pass
print(func.__doc__) 获取函数的注释内容
'''
函数的三种定义方式
无参函数---工具可以单独使用
def func1():
'''无参函数的注释'''
pass
有参函数---工具不能单独使用,需加配件,才能使用
def func2():
'''有参函数的注释'''
pass
空函数
def func3():
'''无参函数的注释'''
pass
#只想好了工具叫什么名字,但不知道不和造这个工具,以后再造
函数定义的特征
函数定义阶段只检测语法不执行代码
def func4():
'''函数的注释'''
print(x)
#此时运行不报错
func4() #此时运行报错
函数的返回值
return返回值可以为任意数据类型
返回值return的特性
- 如果函数中没有return语句或者return语句后面指定返回值,则默认返回None
def func5():
x = 10
print(func5())
def func5():
x = 10
return
print(func5())
- return会终止函数,不再运行return之后的函数代码;假设有多个return,运行到第一个就会结束
- return通过逗号隔开,可以返回多个值,返回的多个值以元组形式存储
def func5():
x = 10
return 1,'a',[2,3],{'b':4,'c':5}
print(func5())
函数的参数
有参函数:有参数的函数
参数:类比手电筒强光弱光需自己调控,"强光"/"弱光"对应着"光"这个参数两个不同的值
def func(x:lis[int],y:str):->int
'''函数的注释'''
pass
# ':'后面规定的是参数的数据类型,但是是约定俗成的,'->'后面规定的是返回值的数据类型,同样也是约定俗成的
形参
定义函数阶段产生,具有接收实参的作用,具有描述意义
位置形参
从左到右依次接收实参的值
默认形参
1.如果不赋值,使用默认值;如果调用的时候传值,使用传的值
2.默认形参必须得放在位置形参后面
实参
函数调用阶段产生,为一个具体的值(可以为所有数据类型),会传递给形参
位置实参
从左到右依次给位置形参传值,一一对应,位置实参与位置形参数量不相等就会报错
关键字实参
1.关键字实参必须写在位置实参后面
2.关键字即为对应的形参名,按照形参名给形参传值