首页 > 代码库 > 【python学习笔记】6.抽象

【python学习笔记】6.抽象

【python学习笔记】6.抽象

  • 创建函数: 使用def语句定义函数,不用声明参数类型,和返回值类型
def function_name(param1, param2):    ‘this is document‘    pass # fuction body    return value # 可选
  • 函数体的第一行字符串被用作文档字符串
  • callable(func): 用来判读func是否可以调用
  • help函数用来返回相关函数的文档
  • 函数名可以作为变量赋值一个变量
  • 位置参数:函数调用期间,参数按照参数列表中的顺序依次赋值给参数变量 func(value1, value2)
  • 关键字参数:函数调用期间,使用参数名提供的参数func(param1=value1, param2=value2)
  • 默认参数:函数声明期间,参数列表中的某个参数被赋值 def func(param=value)
  • 收集参数:以星号(*)开头的参数名,用来接收不定量个参数,以元组的形式传递进入函数;可以传入序列,或者元组变量(变量前需要添加星号(*)
>>> def print_params(*params):...     print params...>>> print_params(1,2,3,4)(1, 2, 3, 4)>>>>>> a=(1, 2, 3, 4)>>> print_params(*a)(1, 2, 3, 4)>>> print_params(a)((1, 2, 3, 4),)
  • 关键字参数收集:以两个星号号(**)开头的参数名,以字典形式传递进入函数;可以传入关键字参数,或者字典变量(变量前需要添加两个星号(**))
def print_params_3(**params):     print params    >>>>>> print_params_3(a=1, b=2, c=3, d=4){‘a‘: 1, ‘c‘: 3, ‘b‘: 2, ‘d‘: 4}>>>>>> print_params_3(**a){‘a‘: 1, ‘c‘: 3, ‘b‘: 2, ‘d‘: 4}>>> 
  • 练习
>>> def interval(start, stop=None, step=1):...     ‘imitates range for step > 0‘...     if stop == None:...             start,stop=0,start...     result=[]...     i = start...     while i < stop:...             result.append(i)...             i+=step...     return result...>>>>>> interval(10)[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> interval(2,5)[2, 3, 4]>>>

【python学习笔记】6.抽象