python中的常用内建属性与内建函数

常用专有属性常用专有属性 说明 触发方式
__init__ 构造初始化函数 创建实例后,赋值时使用,在__new__后

__new__

生成实例所需属性

创建实例时

__class__

实例所在的类

实例.__class__

__str__

实例字符串表示,可读性

Print(类实例)如没实现,使用repr结果

__repr__

实例字符串表示,准确性

类实例 回车 或者print(repr(类实例))

__del__

析构

Del删除实例

__dict__

实例自定义属性

Vars(实例,__dict__)

__doc__

类文档,子类不能继承

Help(类或实例)

__getattribute__

属性访问拦截器

访问实例属性时

__bases__

类的所有父类构成元素

类名.__bases__

内建函数 

1:range与xrange  

    range在python2中直接创建列表,python3中用意味着使用时在创建,

range(start, stop, step)返回一个递增或递减的数字列表,列表的元素值由三个参数决定:

start表示列表开始的值,可省,默认为“0”

stop表示列表结束的值,该参数不可缺少

参数step表示步长,可省,默认值为“1”

range返回的是一个列表,一次性计算并返回所有的值

xrange是一个类,返回的是一个生成器:

生成器是一个可迭代对象,在对生成器进行迭代时,元素是逐个被创建的

使用xrange()进行遍历,每次遍历只返回一个值

一般来看,在对大序列进行迭代的时候,因为xrange的特性,所以它会比较节约内存

因此,xrange的执行效率要高于range

但在python3中,py2的range功能被移除,xrange功能保留并且改名为range

2:map函数    map函数会根据提供的函数对指定的序列做映射

map(…)

        map(function,sequence[,sequence,….])->list

function是一个函数   

sequence:是一个或多个序列,取决于function需要的几个参数,为可迭代对象

返回值是一个list

#函数需要有个参数。例如:

Map(lambda  x: x*x,[1,4,6])    结果为:[1,16,36]

Map(lambda x,y: x+y,[1,2,3],[2,3,4])结果为:[3,5,7]

3:  filter函数:进行清洗操作

filter函数 :对指定序列执行过滤操作   filter(function or None,sequence)->list,tuple,or string

function接受一个参数,返回布尔值True或者False   sequence序列可以是str,tuple,list

filter函数会对序列的参数sequence中的每个元素调用function函数,最后返回的结果包含调用结果为True的元素         返回值的类型和参数sequence的类型相同

filter(lambda x:  x%2,[1,2,3,4])      [1,3]     当结果为True才返回该值

filter(None,”she”)          ‘she’

4:reduce函数:实现累加功能

reduce函数   :对参数序列中元素进行累计    在python2中可以 python3不适用

reduce(function,sequence[sequcene …..])

reduce(lambda x,t:x+y,[2,3,4])   返回10(累加功能)

5:   sorted函数 对可迭代对象进行排序(按照ascii排序)

猜你喜欢

转载自blog.csdn.net/peng_for_csdn/article/details/88880164