函数

函数的初识

什么是函数:

  函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。

  函数能提高应用的模块性,和代码的重复利用率。Python提供了许多内建函数,比如print(),len()等。但也可以自己创建函数,这被叫做用户自定义函数。

函数关键字:

  def:定义(申明)一个函数

用法:

def make():

    # 函数体

注意:定义后的函数不调用是不执行的

函数的调用:

  函数名+() == 函数的调用

例:

def make():

    print(1)

make()

注意:先定义后调用

函数执行过程:

  定义 --> 调用 --> 函数体的代码

函数名加小括号,不管在什么位置就是在调用函数

 

def make():

    print(1)

    print(2)

    print(3)

input(make())
def  make():

    print("掏出手机")

    print("打开微信")

    print("摇一摇")

    print("聊一聊")

    print("搞一搞")

make()

print("去医院看看")

make()

print("看看书")

函数的返回值:

def make():

    print("掏出手机")

    print("打开陌陌")

    print("找个妹子")

    print("询问一番")

    print("盘她")

    return "萝莉""少妇"

ret = make()

print(ret) 

返回值单个就它本身,多个就是一个元组

返回值写了return没有写内容,返回的就是None

没有写return返回的也是None

return下面的代码都不执行,并且结束了这个函数

返回值返回给调用者

return关键字的作用

  1,结束整个函数。

  2,给函数的执行者(调用者)返回值。

函数的参数

def make(char,addr):  # 形参  

    print("掏出手机")

    print("打开%s" % char)

    print("找一个%s" % addr)

    print("聊一聊")

make("微信","北京")  # 实参

make("陌陌")

将实参传递给形参的过程——传参

形参和实参的位置一一对应

位置参数:按照位置传值

def func(x,y):
    pass
func("a", "b")

默认参数:将变化比较小的值设置成默认数值

def func(a, b=10):
    print(a + b)
func(10)

混合传参:位置、关键字形式混着用

  位置参数+默认参数

  位置参数+关键字参数(位置参数必须放在关键字参数)

def func(a, b, c):
    print(a, b, c)
func(b=1, c=2, a=3)

关键字参数:通过形参的名字指定传参

  关键字参数之间可以不按位置顺序

正确用法

问题一:位置参数必须在关键字参数的前面

问题二:对于一个形参只能赋值一次

动态参数:

用途:在不明确接受参数的数量时使用*args和**kwargs

def func(*args):  # 在形参位置*叫做聚合
    print(args)  # 元组形式 (1, 2, 3, 4)
func(1, 2, 3, 4)
def func(**kwargs):  # 动态默认参数  # 形参的时候**聚合
    print(kwargs)  # 字典{'a':1,'b':2,'c':3}
func(a=1,b=2,c=3)  # 关键字的形式传参

args和kwargs 是可以更换的,但是程序员约定俗成都用它

形参顺序:

位置>动态位置>默认>动态默认

实参顺序:

位置>关键字

def func(*args,**kwargs):  # *聚合
    print(*args)  # *打散  # 1,2,3
    print(*kwargs)  # a,b
func(1,2,3,a=1,b=2)

在实参调用的时候*是将可迭代的对象打散,字典只输出键

在形参处出现*就是在聚合

在实参调用的时候**将字典打散成 关键字参数(键=值 )

在形参处出现**就是将关键字参数聚合成字典

三元运算符:

变量 = 条件成立的结果 if 条件 else 条件不成立的结果 应用场景:

三元运算符在不确定赋值的时候会用到,只能用if..else..,不能加elif...

 

 

 

 

 

posted on 2019-03-13 15:47  渴死的蟹  阅读(78)  评论(0编辑  收藏  举报

导航