• Python函数


    2019-05-28

    函数总结:
      在一个完整的项目中,某些功能会反复使用。那么会将功能封装成函数,当我们要使用这个功能的时候直接调用这个函数即可。

    1、本质:函数就是对功能的封装
    2、优点
      1、简化代码结构,增加了代码的复用度(重复使用的程度)
      2、如果想修改某些功能或者修改某个BUG,修改函数的对应的错误即可
    3、定义函数
      def 函数名(参数1,参数2,参数n):
        语句
        return 表达式

      def:函数代码块以def关键字开始
      函数名:遵循标识符规则

      ():是参数列表的开始与结束
      参数列表(参数1,参数2,......,参数n):任何传入函数的参数和变量必须放在圆括号之间,用逗号分隔。函数从函数的调用者哪里获取的信息

      冒号:函数内容(封装的功能)以冒号开始,并且要缩进

      语句:函数封装的功能

      return:一般用于结束函数,并返回信息给函数的调用者,

      表达式:即为要返回给函数的调用者的信息

      注意:最后的return 语句表达式,可以不写,相当于return None

    传递参数:
    1、值传递
      传递的是不可变类型(string,tuple,number不可变的)

    2、引用传递
      传递的是可变类型(list,dict,set是可变的)

      关键字参数
        允许函数调用时参数的顺序与定义时不一致
      使用关键字参数

      默认参数
        调用函数时,如果没有传递参数,则使用默认参数。
      以后要用默认参数,最好将参数放到最后。

      不定长参数
        能处理比定义时更多的参数

        def func(name,*arr)://arr可以随便写 print(name) for x in arr: print(x) func("sunck","good","nice","handsom")
        加了*arr的变量存放所有未命名的变量参数,如果在函数调用时没有指定参数,他就是一个空元组
        **代表键值对的参数字典,和*所代表的意义类似

    函数种类:

    1、匿名函数
      不使用def这样的语句定义函数,使用lambda来创建函数
      特点 :
        1.lambda只是一个表达式,函数体比def简单
        2、lambda主体是一个表达式,而不是代码块,仅仅只能在lambda表达式中封装简单的逻辑
        3、lambda函数有自己的命名空间,且不能访问自由参数列表之外的或全局命名空间里的参数
        4、虽然lambda是一个表达式且看起来只能写一行,与C和C++内联函数不同,
      格式:
        lambda参数1,参数2,...参数n:expression

        sum=lambda num1,num2:num1+num2
        print(sum(1,2))

    2、偏函数
      使用base进制
      把一个参数给固定住,形成一个新的函数
      引入import functools模块,例如下面:
      int3=functools.partial(int,base=2)   print(int3("111"))

      变量的作用域
      变量可以使用的范围
      程序的变量并不是在所有位置都能使用,访问的权限决定于变量的在哪里赋值的

     

    喜欢的可以打赏!!!
  • 相关阅读:
    053-49
    053-3
    053-204
    053-491
    053-205
    053-57
    053-149
    053-47
    053-150
    回答2
  • 原文地址:https://www.cnblogs.com/despatch/p/10937679.html
Copyright © 2020-2023  润新知