python基础补漏-03-函数

函数:一般来说就是 以功能划分的代码模块

【1】 内置函数

      

一般我们使用的模块 ---可以大概有个了解 大多数的用法都很简单

 2 【函数返回值】

   我们应该控制函数的每条分支。 也就是说 我们得到的函数执行完之后的信号,就是其中一条分支的结果

  在python中 通过return 关键字 返回一个对象

3【参数】

value -参数就是值

我们说的穿参 就是传值

那么实参跟形参的差别。就是在不同的函数空间的不同值

实参我们通常指的是全局空间的参数

形参通产指的是函数空间所使用的参数

那么python在函数里面 还添加了几种额外的形参表示方式,方便我们使用

那就是默认参数和动态参数

默认参数:

import datetime as dt
 
def log_time(message, time=None):
  if time is None:
    time=dt.datetime.now()
  print("{0}: {1}".format(time.isoformat(), message))

也就是 当调用函数的时候,没有传递这个参数,那么默认给这个参数赋值

-----------------------------------------------------------------------------------------------------------------------------

动态参数:

直接拷贝吧 懒的慌

class Person:    
    def __init__(self,*pros,**attrs):    
        self.name = "jeff"    
        self.pros = pros    
        for (key,value) in attrs.items():    
            stm = "self.%s = /"%s/""% (key,value)    
            exec(stm)    
      
    if __name__ == "__main__":    
        jeff = Person(1,2,3,sex="boy")    
        print jeff.pros    
        print jeff.sex    
        print dir(jeff)  

打印出来的内容是
(1, 2, 3)
boy
['__doc__', '__init__', '__module__', 'name', 'pros', 'sex']

python不定参数:
参数以一个*号开头的代表着一个任意长度的数组,可以接收连续一串参数,如上面代码里传的是1,2,3,你可以更多。
参数以两个*号开头的代表着一个字典,参数的形式是“key=value”,接受连续任意多个参数。
在函数内,我们就可以把前者当作一个元组来处理,打印结果看得出来是一个元组。注意,调用方法是参数不定长,而在方法执行的时候,长度已定了,所以是元组。同时,我们可以把后者当作一个字典来处理。

原文地址:https://www.cnblogs.com/nerdlerss/p/6237248.html