zoukankan      html  css  js  c++  java
  • 潭州课堂25班:Ph201805201 第九课 函数作用域和匿名函数 (课堂笔记)

    匿名函数:

      lambda obj:str(obj).isdigit

      语法规则:   lambda 参数:表达式

      列:

        ma1 = map( lambda obj:'binbin','abcdef' )
        print( list(ma1) )

        ['binbin', 'binbin', 'binbin', 'binbin', 'binbin', 'binbin']


    闭包
      def fun_1():
       print( '正在调用01' )

       def fun_2():
       print( '正在调用02' )
       return fun_2        

      f_1 = fun_1()      正在调用01
      f_1()           正在调用02
      闭包是函数里边嵌套函数,外层的函数返回里层,这种情况叫闭包,他是种特殊的函数的调用,
      闭包也可以得到外层函数的变量,上函数内外部的桥梁


    函数作用域

        
      global 的使用,  声明全局变量
      x = 1
      def fun_1():
       global x # 声明全局变量
       x += 1 # 在没声明前不可直接修改,否则去不去啊
       print( x )

       def fun_2():
       print( x )
       return fun_2

      f_1 = fun_1()
      f_1()
      
      
      nonlocal 局部变量的声明
       def fun_1():
       x = 1

       def fun_2():
       nonlocal x # 声明局部变量
       x += 1 # 声明后可直接查,改
       print( x )
       return fun_2

      f_1 = fun_1()
      f_1()

     递归

      def fun_a( n ):
        if n == 1:
          return 1
        return fun_a( n-1 )*n

      print( fun_a(5) )

      自己调用自己

    回调

      def fun_a( a ):
       if a:
       fun_b()
       else:
       print('没有被调用')

      def fun_b():
       print('正在调用')

      fun_a( False )

     

  • 相关阅读:
    数值分析实验之数值积分法(java 代码)
    Python 数据处理
    Python 网络爬虫
    数据库系统开发——旅游公司机票查询及预订系统
    Python词云生成
    Python库的安装与查看
    Python词频统计
    Python程序设计训练
    Python编程基础训练
    如何在同一Linux服务器上创建多站点
  • 原文地址:https://www.cnblogs.com/gdwz922/p/9153907.html
Copyright © 2011-2022 走看看