博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
4.24—010—周三
阅读量:4987 次
发布时间:2019-06-12

本文共 2328 字,大约阅读时间需要 7 分钟。

今日所学内容:函数

函数:是完成 特定 功能的代码块,作为一个整体,对其进行特定的命名,该名字就代表函数

    -- 现实中的意义:很多问题要借助一些工具进行处理 => 可以将工具提前生产出来并命名

    => 通过名字可以找到工具 => 使用工具来解决问题

优点:

1、避免代码的冗余

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

3、让代码具有复用性,便于维护

一、函数的四部分

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

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

2、函数体:完成特定功能的代码块

3、参数:完成功能需要的条件信息

4、返回值:功能完成后的反馈结果

  — 函数的四部分都可以根据需求的变化而变化

二、函数的使用

使用函数时:必须先定义 后使用

1、根据需求定义函数

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

3、函数名() 执行函数地址中存放的所有代码块

  -- 函数在定义时需要外界的参数,就要在调用

4、函数执行完成后一定有返回结果,通过 return 关键字将结果返回给外界

  -- 外界需要知道执行结果,用变量接收

  — 外界不需要知道执行结果,只执行函数(不需要接收)即可

当设定好函数后,需要使用函数时,就调用一次,如果又有相同的需求,函数可以重复调用,编码过程中函数只有一个,代码结构清晰且不冗余。

三、函数的分类

1、根据函数体分类:

  1)空函数:用 pass 来填充函数体的函数

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

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

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

    Eg:def fn2():   print('函数体')

2、根据函数参数分类

  1)有参函数: Eg:def add_two(n1, n2):

              print('功能体需要外界的参数')

              print(n1 + n2)

  2)无参函数:  Eg:def add():

              print('功能体不需要外界的参数')

              n1 = input('n1: ')

              n2 = input('n2: ')

              print(n1 + n2)

3、根据函数返回值分类:所有的函数都有返回值

  1)不明确返回值(无return)  def low_two(n1, n2):

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

  2)明确返回值(有 return)

      def jump_two(n1, n2):

        return n1 * n2     # 外部需要知道内部的执行结果

      res = jump_two(10, 20)

      print(res)

四、函数的返回值

1、函数名():

    先拿到函数地址 => 再加载()内的执行函数体 =>最后得到函数的执行结果

返回值的功能:    1) 结束函数

          2) 将函数的内部数据返回给外部

2、应用场景

  1) 不明确 return 关键词的函数:

      函数体中没有 return, 系统在函数最末尾自动添加了 return,返回的是None

  2) 明确 空return 关键词的函数:为了结束函数而 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())

    多个值

      def 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)

 

转载于:https://www.cnblogs.com/Chinesehan/p/10760364.html

你可能感兴趣的文章
决定360浏览器以极速模式、兼容模式、IE标准模式打开的代码
查看>>
Java 文件上传与下载、email
查看>>
数据库中函数和存储过程的区别
查看>>
8 个必备的PHP功能开发
查看>>
iOS开发之资讯类App常用分类控件的封装与实现(CollectionView+Swift3.0+)
查看>>
在JS中:如何让三个未知数倒序显示,求100~1000以内的水仙花数方法:
查看>>
iOS -NSArray
查看>>
dom中表格操作
查看>>
Centos7安装Typecho详细教程
查看>>
Object Death in Garbage Collector's Perspective
查看>>
Redis基础知识之————使用技巧(持续更新中.....)
查看>>
feathers button 支持中文(非bitmap字体)
查看>>
帖子收藏
查看>>
scrapy安装教程
查看>>
装饰器
查看>>
19、AJAX
查看>>
NTP时间服务器的配置
查看>>
js011-DOM扩展
查看>>
JPA api 学习
查看>>
C#JWT验证
查看>>