• python第十一天


    函数总结:

      def func(a, b):
      print(a, b)
      return a + b

      四个组成部分:

      函数名:调用函数的依据

      函数体:执行函数逻辑的

      参数列表:为函数提供内部资源

      返回值:将函数执行结果返回给外界

      返回值:1、空返回(没有return或空return)  2、一键返回  3、多值返回:装有多个值的元组

      参数列表:

      实参:外界调用函数传入的参数,拥有实际值

      形参:函数定义时,()中定于用来接收实参的值

      关系:形参是对实参值得拷贝

      

      实参分类:

      位置实参:按位置对应传递参数,必须出现在关键字实参之前,

      关键字实参:不需要按位置对应传参,用参数名标注为谁传参,必须出现在位置实参值后

      位置实参:只能给位置形参传参(位置形参,默认形参,可变长位置形参)

      关键字实参:可以任意形参传参

      

      出现顺序:

      位置形参》默认形参》可变长位置形参》关键字形参》可变长关键字形参

    函数对象

      定义:函数名就是存放了函数的内存地址,存放了内存地址的变量都是对象,即函数名就是函数对象,

      函数对象的应用:

      1、可以直接被引用: fn = cp_fn

      2、可以当做函数参数传递:computed(cp_fn,100,20)

      3、可以作为函数的返回值:get_cp_fn(cmd):return add

      4、可以作为容器类型的元素: 函数对应关系中的值

    名称空间

      定义:存放名字与内存空间地址对应关系的容器

      作用:解决有名字有限,导致名字重复发送冲突的问题

      三种名称空间:

      Built-in:内置名称空间,系统级, 一个,随解释器执行而产生,解释器停止而销毁。

      Global:全局名称空间,文件级,多个,随着所属文件加载而生产,文件运行完毕而销毁。

      Local:局部名称空间,函数级,多个,对所属函数执行而产生,函数执行完毕而销毁。

    注意:

    del 名字 :可以移除查找最近的名字与内存空间地址的对应关系

    加载顺序:Built-in 》Global 》Local

      global关键词: 

    def fn()
    global num
    num = 20
    print(num)

    # global关键词可以将local的名字提升为Global的名字

    #一个文件中的Global名字就是一个,所以函数内部外部使用的名字都是一个

    函数的嵌套

    # 将函数直接定义到另一个函数内部,就可以使用外部函数中的名字

    def outer():
    num = 20
    def inner():
    print(num) # inner就可以直接使用outer中的名字
    inner()
    outer()

    作用域

      定义:名字起作用的范围

      作用:解决同名字可以共存的问题

    四种作用域:

      Built-in:内置作用域,所有文件所有函数

      Global:全局作用域,当前文件所有函数

      Enclosing:嵌套作用域,当前函数与当前函数的内部函数

      Local:局部作用域,当前函数

    注意:不用作用域之前的名字不冲突,以达到名字的重用

    查找顺序:Local》Enclosing》Global》Built-in

    闭包(closure)

    定义:被包裹的函数,称之为闭包

    完整闭包结:1、将函数进行封包处理;2、提升函数名的作用域,将内部函数队形作为外部函数的返回值

  • 相关阅读:
    windows 环境下在anaconda 3中安装python2和python3两个环境(python2和python3共存)
    python 中,如何在一个函数中调用另一个函数返回的多个值中的一个?
    Coursera 机器学习 第一周 学习笔记
    正则表达式 注释
    正则表达式 分组
    24_04SpringMVC实现文件上传及拦截器
    前端之CSS基础
    前端之html
    MySQL数据库实战之优酷
    数据库基础加练习
  • 原文地址:https://www.cnblogs.com/yangzhaon/p/10636638.html
Copyright © 2020-2023  润新知