python基础知识~ 函数详解

本文围绕Python函数展开,介绍了函数的定义、返回值、参数分类及注意事项,包括形参、实参、动态参数等。还阐述了变量名称空间,如全局、局部和内置变量,以及它们的调用规则。此外,提及了列表传参、打散特性和函数注释等内容。


一  定义
     def 函数名(a,*args(位置元组),b=3,**kwargs(关键字字典)):
     return value //返回值
二  返回值
   1 返回值代表函数结束点
   2 返回值可以有多个
   3 返回值的接收变量类型为元组,可进行解包
   eg (a,b,c)=函数名()
三 参数

   1 分类 
      形参 单纯变量
      实参 负有实际值的变量
      传参 传递变量的过程

    2 注意 
      1 如果函数只有形参没有实参,那么在调用函数时必须初始化值
        2 1 按照变量顺序赋值
           2 按照变量名复制
           3 先按照变量顺序,再根据变量名复制
        eg
         def a(aa,bb)
         a(aa='12',bb='12')
    3  动态参数
        动态参数的出现是在于实参初始化值的数量是不固定的,不能限制数量
       1 都可以为空
       2 可以和形参和实参共存            

         *args(元组) **kwargs(字典)
         def a(*food)
          a('1','2','23') //返回元组
          def a(**food)
         a(1='23',2='232') //返回字典
       a(**kwargs)

   4 对于列表的传参,可以进行传参,然后return对象,这个对象和原列表是一个东西

    5 默认值如果是可变类型,每次使用的都是同一个

    6  注意事项
       1 形式 形参->动态参数->实参——>关键字参数 这种方式调用,一定要保证这种顺序,否则会出问题
         
 四 变量名称空间
    全局变量 1 声明在函数外,会持续到整个程序执行结束 2 全局变量作用于全局 3 查看函数globals() 
    局部变量 1 声明在函数内,会在函数执行完结束进行清除 2 全局变量作用于局部变量也只是暂时改变 3查看函数locals()
    内置变量

     1 局部变量如果想要调用全局变量 必须在函数进行global再次声明,否则函数是无法寻找定位的 (局部变量调用全局变量)

     2 如果在声明情况下调用全局变量,对全局变量的更改也是全局的这点要牢记 

     3 函数内嵌套也是寻找定位的函数局部变量,没有任何问题,不用再次声明为局部变量(函数内嵌调用前一层局部变量)

     4 函数内嵌套如果想实现变量运算,必须采用nolocal进行声明,而且即便修改也不会影响上一层嵌套函数的值,各自拥有各自的

      eg
       a= 5 

       def func():

          global a:

          a=a+1

             def func1()

                nolocal a

                a=a+1

                print a

         func1()

         print a

func()

                

五 打散特性
   1 目的 将列表 元组打散传入实参
   2 把 列表 字符串 元组 打散
   3 调用 函数形式 a(*实参)
     把字典打散
     调用函数形式 a(**实参)
六 注释
     function.__doc__ 文档函数 输出 注释
     注释
    单行注释
    多行注释
    函数注释

转载于:https://www.cnblogs.com/danhuangpai/p/10881305.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值