• day10


    函数

    函数是将一段完成特定功能的代码块,视作一个整体,名一个名字代表这个函数。

    可以理解为在现实中解决问题徐要用到的工具。

    函数的优点:

                     1. 避免代码的冗余

                     2. 让程序代码结构更加清晰

                     3. 让代码具有复用性,方便维护

    函数的四部分 :

                          1. 函数名:使用该函数的依据

                          2. 函数体:完成功能的代码块

                          3. 返回值:功能完成的反馈结果

          4. 参数:完成功能需要的条件信息

    定义函数的语法:通过def 关键字来定义

    def get_water(water, money):
    print('收入你的%d元钱')
    print('给你%s水种')
    return '矿泉水'

    函数的使用

    使用函数:

    1.  根据需求来定义函数

    2.  通过函数名来找到函数的所在位置(内存地址)

    3.  函数名()执行函数地址所存的代码块,当函数定义时需要外界的参数,就要在调用时传入对应的代码

    4.  函数执行一定有返回值,通过return关键字将结果返回给外界  -- -- 外界需要知道执行结果,用变量接收,反之只执行函数(不需要接收)即可。

    特别要注意:函数名要在定义后再使用。

    函数的四个部分是可以根据需求来发生变化:

    def get_water(water, money):
        print('收入你的%d元钱' % money)
        print('给你%s水种' % water)
        return wate

    需要使用函数时就调用一次

    res = get_water('矿泉水', 10)
    print(res)
    
    print('玩耍...')
    print('又口渴了...'

    第二次有需求在调用一次,函数是可以服用的,这样代码结构会很清晰且不冗余

    res = get_water('王老吉', 20)
    print(res)

    函数的分类

    1.  根据函数分类

    空函数: pass来填充函数体的函数 -- 优先明确函数名,暂不明确函数体(编程中就存在一些没有函数体的函数)

    def login(): pass  # 在开发初期,可以讲所有功能提前列出来,用pass占位着,后期再去填充功能体

    非空函数:有函数体的函数

    根据函数参数分类

    无参数函数:

    def add():
        print('功能体不需要外界的参数')
        n1 = input('n1: ')
        n2 = input('n2: ')
        print(n1 + n2)

    有参函数:

    def add_two(n1, n2):
        print('功能体需要外界的参数')
        print(n1 + n2)

    根据函数返回值分类:

    不明确返回值

    def low_two(n1, n2):
        # 外部不需要知道内部的执行结果
        print(n1 - n2)

    明确返回值

    def jump_two(n1, n2):
        # 外部需要知道内部的执行结果
        return n1 * n2
    res = jump_two(10, 20)
    print(res)

    函数的返回值

    重点:函数名()

    1. 拿到函数地址 ==》加()执行函数体 ==》得到函数的执行结果

    重点:返回值的功能

    1. 结束函数;2. 将函数的内部数据返回给外部

     二、应用场景

    1. 不明确return关键词的函数,系统在函数的末尾自动添加一个return,用来结束函数,返回的值为none

    def fn1():
        print('普通的函数执行')

    res = fn1() # 一般不需要对这样的函数进行接收执行结果
    print(res)

     2.明确空return关键词的函数:为了结束函数而return

    def print_msg():
        while True:
            msg = input("msg: ")
            if msg == 'q':
                # break
                return  # 在特定的位置需要直接结束函数,但不需要告诉外界某个结果,用空return处理
            print(msg)
        print(msg)  # 在break下可以被执行,在return下不能被执行
    res = print_msg()
    print(res)

    3.  有明确返回值需求的函数:

    -- python中的函数本质上只能返回一个值,

     -- 值跟在return关键词后
     -- 可以通过语法上返回多个值,值之间用逗号隔开,但是本质上返回装有多个值的元组

    一个值:

    def get_num():
        num = input('num: ')
        return num
    print(get_num())

    多个值

    f get_two_num():
        n1 = input('n1: ')
        n2 = input('n2: ')
        return n1, n2
        # return (n1, n2)
    # print(get_two_num())
    num1, num2 = get_two_num()  # python的return支持多值返回的语法原因是python中有解压赋值
    print(num1, num2)
  • 相关阅读:
    《我所理解的生活》—读书总结
    《给你一个团队,你能怎么管?》—读书总结
    关于投资那点儿事
    《30岁前的每一天》—读书总结
    《书都不会读,你还想成功》-读书总结
    解决问题—麦肯锡方法:解决问题的七个步骤
    解决问题—基本流程
    关于接入新浪微博第三方登录
    搭建Spring、Spring MVC、Mybatis和Freemarker
    Eclipse+Maven创建webapp项目<二>
  • 原文地址:https://www.cnblogs.com/1624413646hxy/p/10765087.html
Copyright © 2020-2023  润新知