zoukankan      html  css  js  c++  java
  • (五)函数二

    引用
    什么是引用:变量是通过数据的内存起始地址读取数据的
    a = 1 :表示变量a指向了1的内存起始地址
    在python中,值是靠引用来传递来的。我们可以用id( )来判断两个变量是否为同一个值的引用。 我们可以将id值理解为那块内存的地址标示。
     
    变量类型:
        可变类型:修改变量数据,变量引用的地址没有发生变化        (列表、字典、集合)
        不可变类型:如果修改内容,则变量的引用的地址会发生变化      (数字、字符串、元组、布尔类型)  
        {一旦重新赋值,内存地址必定改变}
    不可变类型数据作为实参传递,修改形参,对实参没有影响
    可变类型数据作为实参传递,修改形参,实参跟着发生改变;如若把形参重新赋值,修改形参,不会影响实参。
    • Python中函数参数是引用传递(注意不是值传递)
    注:列表中:+=和=+是特列
        += :会把数据添加原先的列表后面
        =+:生成了一个新的列表
    {扩展:哈希算法:能够通过一个数据计算出一个数字,相同数据的哈希值必定相同}
     
    递归函数:
        本身便是循环,一般不会使用
        必定需要一个结束的条件,不然陷入死循环
     
    匿名函数:
        用lambda关键词能创建小型匿名函数 (没有函数名定义) 
          lambda函数的语法只包含一个语句:lambda+表达式
    # 格式:lambda arg1, arg2: arg1 + arg2    arg1, arg2:形参 arg1 + arg2:运算表达式
    sum = lambda arg1, arg2: arg1 + arg2
    # 调用sum函数
    print("Value of total : " % sum( 10, 20 ))
    print("Value of total : "% sum( 20, 20 ))
    Lambda函数能接收任何数量的参数但只能返回一个表达式的值
    匿名函数不能直接调用print,因为lambda需要一个表达式
    匿名函数可以作为参数进行传递
     
    附:字典排序:变量名.sort(key=匿名函数)
     
    列表推导式:
        ps:轻量级循环创建列表
    >>a = [x for x in range(4)]  
    >> [0,1,2,3]
    # 可多个for循环,多个变量接收
     
    集合(set):
        集合:大括号表示,无序,没有重复数据,不能通过下标获取
                    (只有增加和删除)
        作用:进行去重转换类型(集合里不能有列表)
  • 相关阅读:
    《你的灯还亮着吗?》读后感(一)
    课堂练习-找水王
    私人助手-典型用户和场景描述
    课堂练习-哈利波特
    战略会议2
    战略会议总结
    "私人助手"NABCD分析
    返回一个首尾相连的二维数组的最大子数组的和
    返回一个首尾相连的一位数组中最大子数组的和
    5个常用Java代码混淆器 助你保护你的代码
  • 原文地址:https://www.cnblogs.com/qingchang/p/8973726.html
Copyright © 2011-2022 走看看