zoukankan      html  css  js  c++  java
  • 函数的基本内容总结

    函数
     函数是对功能的封装
     语法:
         def函数名(形参列表)
            函数体(代码块,return)
    
     调用:函数名(实参列表)
    
    2,返回值
      return: 在函数执行的时候,如果遇到return,直接返回
      1,如果函数什么都不写,不写return,就没有返回值,得到的是none
      2,在函数中间或者末尾写return,返回的是none
      3,在函数中写return 值,返回一个值
      4,在函数中可以返回多个返回值,return 值1,值2,值3...,接收的是元组
    
    3,参数
      参数执行的时候给参数传递信息
      *形参:函数声明的位置的变量
      *实参:函数调用的时候给的具体的值
      传参:把实参交给形参的过程
    
      1,实参:
        位置参数:按照形参的参数位置,给形参传值
        关键字参数:按照形参的名字给形参传值
        混合参数:既用位置参数,也用关键参数
      2,形参:
        位置参数
        默认值参数: 先位置参数,后默认值参数
        动态参数
    1,函数的动态参数
      1, *args  位置参数动态传参
      2, *kwargs  关键字参数动态传参
      顺序: 位置参数 *args 默认值参数 *kwargs
      
      dec func(*args,*kwargs):
          pass
          
      形参的位置*,** : 聚合
      实参的位置*,** : 打散
    2,命名空间
      1,内置名称空间
      2,全局名称空间
      3,局部名称空间  
      
      作用域:
          1,全局作用域: 内置 + 全局
          2,局部作用域: 局部(函数被调用)
          globals():查看全局中的内容
          locals():查看作用域中的内容
    3,函数的嵌套
      函数可以互相的嵌套
    4,global和nonlocal的关键
      global:在局部访问全局中的内容  
      nonlocal:在局部访问外层函数离它最近的那个变量
    函数名的应用:(第一类对象)
        函数名的命名规范和变量是一样的
        函数名其实就是变量名
    
        可以作为列表中的元素进行存储
        def func1():
            pass
        def func2():
            pass
        list = [func1,func2]
        for el in list:
            el()
    
        可以作为参数传递给函数
        def func():
            pass
        def proxy(fn):
            fn()
        proxy(func)
    
        可以作为函数的返回值
        def func():
            def inner():
                pass
            return inner)
        func()()
    2,闭包
        在内层函数中访问外层函数的局部变量
        好处:
            1,保护你的变量不受外界影响
            2,可以让变量常驻内存
        写法:
            def outer():
                a = 10
                def inner():
                    print(a)
                return inner
  • 相关阅读:
    android 中webview的屏幕适配问题
    Mongo Delete-19
    Android开发初体验
    Mybatis: 插件及分页
    紧急寻人:十三岁男孩昨日出走至今未回,大家帮忙扩散寻找!
    iOS 9,为前端世界都带来了些什么?「译」
    修改 Cucumber HTML 报告
    Android多模块混淆的问题
    吴裕雄--天生自然 诗经:村居
    吴裕雄--天生自然 诗经:太虚幻境
  • 原文地址:https://www.cnblogs.com/feifeifeisir/p/9443375.html
Copyright © 2011-2022 走看看