day10-函数

函数定义的特性

函数定义过程,只检测语法,不执行代码,调用阶段才会执行代码

定义函数的三种形式

#空函数
def func():
    pass

#无参函数
def func():
    print(1)

#有参函数
def func(x):
    print(x)
    

函数的调用

def func():
    pass
#函数的调用就是使用函数
print(func)  #打印函数地址

函数的返回值

def func(n):
    n = n*10
    return n
res = func(2)
print(res)

'''
return的特性
1、return返回一个值,默认返回None
2、return会终止函数,不运行下面的代码
3、return通过逗号隔开可以返回多个值,以元组形式接收
'''

有参函数

def func(x:int, y:list)->int:  
    '''期望参数的输入是整形和列表,返回值是整型'''
    return z

形参

定义函数阶段的产物,具有接收实参的作用,具有描述意义

位置形参

从左到右依次接收实参的值

默认形参

如果没有给默认形参传值,就使用默认值;如果传值,就是用传的值

默认形参必须放在位置形参后面

def func(x, y ,z = 1):
    return x, y, z

实参

函数调用阶段的产物,传给形参一个具体的值(可以为任意数据类型)

位置实参

从左到右给位置形参传值,一一对应,数量与位置形参一致

关键字实参

1、位置实参必须写在关键字实参的前面,

2、按照形参名给形参传值,函数的参数尽量不要超过3个

可变长参数

可变长形参

def func(x, y, *args):
    return x, y, args
#  *args会就收多余的实参,以元组的形式存储

可变长实参

def func(x, y, z):
    return x, y, z 
lis = [1,2,3]
res = func(*lis)  #相当于做了解压缩
    

posted on 2019-09-21 13:40  shenblogs  阅读(139)  评论(0)    收藏  举报

导航