python学习笔记6.抽象

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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.抽象的主要内容,如果未能解决你的问题,请参考以下文章

Python 3学习笔记

python学习笔记7.更加抽象

python学习笔记 map&&reduce

python学习笔记3_抽象

Python学习笔记之抽象

设计模式学习笔记--抽象工厂模式