Build-in Function,启动python解释器,输⼊ dir(__builtins__) , 可以看到 很多python解释器启动后默认加载的属性和函数,这些函数称之为内建函 数, 这些函数因为在编程时使⽤较多,cpython解释器⽤c语⾔实现了这些函 数,启动解释器 时默认加载。
这些函数数量众多,不宜记忆,开发时不是都⽤到的,待⽤到时再 help(function), 查看如何使⽤,或结合百度查询即可,在这⾥介绍些常⽤的内 建函数。
In [21]: testList = [x+2 for x in range(5)]
In [22]: testList
Out[22]: [2, 3, 4, 5, 6]
reduce函数
reduce函数,reduce函数会对参数序列中元素进⾏累积
__getattribute__的坑:
#原因是:当t.b执⾏时,会调⽤Person类中定义的__getattribute__⽅法,但是在if条件不满⾜,所以 程序执⾏else⾥⾯的代码,即return self.test
问题就在 self.test的值返回,那么⾸先要获取self.test的值,因为self此时就是t这个对象
t.test attribute__⽅法⽣了递归调⽤,由于这个递归过程没有判断什么时候推出,所以这个程序会永⽆休⽌
#每次调⽤函数,就需要保存⼀些数据,那么随着调⽤的次数越来越多,最终内存吃光,
注意:以后不要在__getattribute__⽅法中调⽤self.xxxx