• python开发学习day11 (函数; 返回值 ; 形参与实参 )


    2020-06-15                             目录:

    一、函数

    1.1  什么是函数?

    1.2  为什么要用函数?

    1.3  如何用函数?

    1.3.1  函数的基本使用

    1.3.2  先定义,后调用

    1.3.3  定义函数的三种形式

    1.3.4  调用函数的三种形式

    二、函数的返回值

    三、函数参数的详细使用

    一、函数

    1.1  什么是函数?

    程序中具有某一功能的工具,即为函数
    事先准备工具的过程,即为函数的定义
    遇到应用场景拿来就用,即为函数的调用

    1.2  为什么要用函数?

    对于内置函数,也就是python3解释器定义好的,拿来用即可
    对于自定义函数,可以带来三点便利:
    ①  增强程序的组织结构性,提升可读性
    ②  简洁,减少代码冗余
    ③  提升程序的可维护性与扩展性

    1.3  如何用函数?

    定义函数的语法:
    def  函数名(参数1,参数2,参数3):
        '''
        文档注释
        '''
        代码1
        代码2
        代码3
        ...
        return 值
    调用函数的语法:
    函数名(值1,值2,值3)

    1.3.1  函数的基本使用

    def login():   # login = 存放代码的那个内存空间的内存地址,类似于x=10
        name = input("your name>>: ")
        pwd = input("your pwd>>: ")if name == "egon" and pwd == "123" :
            print('login successful')
        else:
            print("user or password error")
    print(login)   # >>> <function login at 0x0000020B7EA251F0>,(函数的地址)
    login()        # 调用函数
    login()        # 调用函数    

    1.3.2  先定义,后调用

    函数的使用分为两个阶段:
    ①  定义阶段:申请内存空间把代码存放进去,然后将内存地址绑定给函数名
    ②  调用阶段:通过函数名找到函数体代码,加括号触发函数体运行
    PS:函数定义阶段不执行代码只识别语法,只有在调用阶段才执行代码

      如:

    def f1():
        print('from f1')
        f2()  # 函数定义时不运行,所以不会报错
    
    def f2():
        print('from f2')
    
    f1()  

    1.3.3  定义函数的三种形式

    ① 无参函数  (函数体代码运行逻辑不需要外来数据)
    def login():
        name = input("your name>>: ")
        pwd = input("your pwd>>: ")
        if name == "egon" and pwd == "123" :
            print('login successful')
        else:
            print("user or password error")
    
    login()
    ② 有参函数
    def max2(x,y):   # 函数的运行依赖外来数据x,y
        if x > y:
            print(x)
        else:
            print(y)
    
    max2(10,11)    # 相当于把10赋值给x,11赋值给y来运行
    ③ 空函数
    def login():
        pass        # 函数体暂时为空,用来作为预留代码的框架
    
    def register():
        pass

    1.3.4  调用函数的三种形式

    def max(x, y):
        if x > y:
            return x
        else:
            return y

    ① 语句形式:(单纯的调用)

    max(10,12)  # 类似于print('hello')调用print函数一样

    ② 表达式形式:

    x = max2(1, 2)
    res = max2(1, 2) * 10
    print(x)
    print(res)

    ③ 可以当做参数传给另外一个函数:

    res = max(11, max(10,12))
    print(res)

    二、函数的返回值

    ① 函数体内没有return,或者return后面没有值:默认返回None
    return 值:返回的就是这个值
    def func():
        return 123
    
    
    res = func()
    print(res)      # >>>123
    return 值1,值2,值3 : 返回一个元组(值1,值2,值3)
    def func():
        return 123, "abc", 3.1
    
    
    res = func()
    print(res, type(res))  # >>>(123, 'abc', 3.1) <class 'tuple'>

    PS:函数内可以有多个return,return是函数结束的标志,函数体代码但凡运行到一个 return 就会立刻终止整个函数的运行,

       然后将return后的值当做本次调用的产品返回

    三、函数参数的详细使用

    3.1  形参与实参

    函数的参数分为两大类:形参与实参

    3.1.1  形参

    在定义函数阶段,括号内指定的参数,称之为形式参数,简称形参
    形参相当于定义在函数内的变量名,用于接收外部传进来的值
    def func(x,y): # x和y即形参 print(x) print(y) func(10,11)

    3.1.2  实参

    在调用函数阶段,括号内传入的值,称之为实际参数,简称实参
    实参相当于变量值,用于为形参赋值的

    def func(x,y): print(x) print(y) func(10,11) #10和11即为实参

    ps: 在函数调用时,会将实参的值绑定给形参,这种绑定关系只能在函数内使用,

         在函数调用完毕后,实参与形参会解除绑定,回收占用的内存空间

  • 相关阅读:
    Typora上传图片设置
    SpringBoot入门详细教程
    vue
    我才学习到的严格模式(越往后看,越感觉复杂啊)
    js中三种定义变量的方式const, var, let的区别。
    冒泡
    tab切换
    日历
    jquery实现拖拽进度条并显示百分比的特效
    抽奖代码
  • 原文地址:https://www.cnblogs.com/cui-cheng/p/13131107.html
Copyright © 2020-2023  润新知