• 初识函数


    目录

    1.函数的简介

    2.函数的定义

    3.返回值return

    4.形参和实参

         形参(位置参数、默认参数、不定参数)

         实参(位置参数、关键字参数、混合参数)

    5.第一类对象

    6.函数的嵌套

          名称空间

          作用域

          global

          nonlocal

    一.函数的简介

        对一段代码的封装(功能或者动作)

    二.函数的定义

        def 函数名():

              函数体

        函数名()

    ps: def是定义函数的关键字,函数名相当于一个变量名,函数体主要定义的功能,函数名() 调用一段函数。

    三.返回值return

         遇到return之后的函数体就不会执行,return后面可以跟返回值,如果不跟返回值返回的结果为none,如果跟一个返回值就返回一个str,如果跟多个返回值就返回一个元组。调用者可以直接结构成多个变量。还可以用一个变量去接收return返回的值做进一步的判断。

    def yue():
    print("please take out your phone")
    print("open the app for dating")
    print("find a beautifull girl")
    return "全都是old women"
    print("ask for a data")
    result = yue()
    print(result)

    def compare(a,b):
    c = a if a > b else b
    return c

    result = compare(100,20)
    print(result)
     

    四.形参和实参和传参的概述

         形参(位置参数、默认参数、不定参数)

         写在函数声明的地方叫形参,相当于一个变量的存在,如果定义了形参那么必须给实参,否则会报错

          1.位置参数:顾名思义按照位置来的。

          2.默认参数:定义了默认参数的时候,调用的时候就不用给传参。

          3.不定参数(动态参数)

                *args:动态接手位置参数,以元组的形式保存

                **kwargs:动态接手关键字参数,以字典的形式保存

        执行顺序:位置 > *args > 默认值 > **kwargs  

    * ** 在形参表示聚合,在实参表示打散

         实参(位置参数、关键字参数、混合参数)

         执行函数时给的参数,相当于一个变量的值。

        1.位置参数

        2.关键字参数

        3.混合参数

      执行顺序:位置参数在前关键字参数在后。

         传参 :在实参里给的值会被赋予给形参这个过程叫作传参。

    五.第一类对象

        函数的本质就是变量,因此除了不能做运算以外,可以实现变量能做的所有操作。

    六.函数的嵌套

          名称空间

           1.内置名称空间:解释器内部的一些东西如:input len range 等......

           2.全局名称空间:在全局py文件中定义...(变量,函数)

           3.局部名称空间:在函数内部的变量及函数

          作用域

             全局作用域:可以到处调用(内置名称空间+全局名称空间)globals()查看全局

              局部作用域:局部使用,函数内部,局部名称空间 locals()查看当前作用域

          global

               1.在局部创建全局变量

               2.在局部引入全局变量

          nonlocal

               在局部,内层函数引入外层函数的变量

    We are down, but not beaten. tested but not defeated.
  • 相关阅读:
    JS 知识点补充
    JS 数据之间类型的转化
    JS 数据的类型
    数据结构--数组、单链表和双链表介绍 以及 双向链表
    数据结构--队列
    数据结构--栈
    24. 两两交换链表中的节点
    23. 合并K个排序链表
    22. 括号生成
    21. 合并两个有序链表
  • 原文地址:https://www.cnblogs.com/guniang/p/10710769.html
Copyright © 2020-2023  润新知