1 什么是函数

    函数就是具备某一功能的工具

2 为什么要用函数

    1  程序的组织结构不清晰,可读性差

    2  代码冗余

    3  可扩展性差

 

3 如何用函数

    函数的使用必须遵循的原则:先定义,后调用

        修理工事先准备工具的过程即函数的定义

        修理工遇到应用场景拿来工具就用即函数的调用

 

语法:

        def 函数名(参数1,参数2,...):

            """

            文档注释

            """

            code1

            code2

            code3

            ......

            return 返回值

 

        def:定义函数的关键字

        函数名: 就相当于一个变量名,指向函数的内存地址,

                注意:函数的内存地址()就可以触发函数体代码的执行

        参数: 参数是函数的调用者为函数体代码传值的媒介,在python中函数的参数无需声明类型

        """文档注释""" : 推荐写上

        代码块:就是函数体功能的具体实现

        return 返回值 :函数体代码块运行的成果

函数的使用分为两个阶段:

    定义阶段: 只检测语法,不执行代码

    调用阶段:运行函数体代码

        def foo():

            xxx

            print(

先定义

def foo():

    print("from foo")

 

后调用

print(foo)

foo() 定义时无参,意味着调用时也无需传入参数

先定义

def bar(x,y):

    print(x)

    print(y)

后调用

bar('a',2) 定义时无参,意味着调用时也必须传入参数

定义无参函数:当函数体的代码逻辑不依赖任何传入的值就能执行,就不需要定义参数

def print_msg():

    print('='*50)

    print('welecome.....'.center(50,' '))

    print('='*50)

print_msg()

print_msg()

定义有参函数:当函数体的代码逻辑依赖于外部调用者传入的值才能执行,必须定义参数用来接收外部传入的值

def max2(x,y):

    # x=1

    # y=3

    if x > y:

        print(x)

    else:

        print(y)

max2(1,4)

def max2(x,y):

    if x > y:

        return x

    else:

        return y

res=max2(1,4)

print(res)

def foo():

    print('from foo')

    bar()

foo()

def bar():

    print('from bar')

def foo():

    print('from foo')

    bar()

foo()

定义阶段

def foo():

    print('from foo')

    bar()

 

def bar():

    print('from bar')

 

调用阶段

foo()

 

定义阶段

def foo():

    print('from foo')

    bar()

 

调用阶段

foo()

 

def bar():

    print('from bar')

 

1.2 有参函数

def bar(x,y):

    print(x,y)

bar(1,2)

 

1.3 空函数

def func():

    pass

 

ftp

def upload():

    pass

 

def download():

    pass

 

def login():

    pass

 

def register():

    pass

 

def ls():

    pass

 

二 调用函数的三种形式

2.1 #语句形式

def foo():

    print('from foo')

foo()

 

2.2 表达式形式

def foo(x,y):

    res = x + y

    return res

 

res=foo(1,2) 表达式形式

res1=foo(1,2)*100

print(res1)

 

2.3 可以当作参数传给另外一个函数

def max2(x,y):

    if x > y:

        return x

    else:

        return y

一 函数的返回值需要注意:

  1 返回值没有类型限制

  2 返回值没有个数限制

返回1个值:调用函数拿到的结果就是一个值

返回多个值:调用函数拿到的结果就是一个元组

返回0个值,或者不写return:调用函数拿到的结果就是None

二 return关键字:return是函数结束的标志,函数内可以有多个return,但只要执行一次,整个函数就结束

1.2 有参函数def bar(x,y):    print(x,y)bar(1,2)
1.3 空函数def func():    pass
ftpdef upload():    pass
def download():    pass
def login():    pass
def register():    pass
def ls():    pass
二 调用函数的三种形式2.1 #语句形式def foo():    print('from foo')foo()
2.2 表达式形式def foo(x,y):    res = x + y    return res
res=foo(1,2) #表达式形式res1=foo(1,2)*100print(res1)
2.3 可以当作参数传给另外一个函数def max2(x,y):    if x > y:        return x    else:        return y

 posted on 2019-01-10 15:08  HeiTangMuSi  阅读(146)  评论(0编辑  收藏  举报