-
两个内建函数:
dir()
type()
查看全部 -
在python3.6时两个定义类的方法输出会是一样了,在2.7的时候运行显示如视频一样!
查看全部 -
def __setattr__(self, key, value): # setattr(self, key, value) self.__dict__[key] = value def __getattribute__(self, item): # return getattr(self, item) # RuntimeError: maximum recursion depth exceeded # return self.__dict__[item] return super(Magic, self).__getattribute__(item) def __getattr__(self, item): return "no attr %s" % item
注释的都是错误的
__getattr__ 是获取不到属性的时候才会被调用的.
__getattribute__ 每次都会被调用
查看全部 -
查看全部
-
平常不需要__ new__ 因为通常是继承了父类的(新式类均有继承), 父类会创建类对象.
查看全部 -
def __new__(cls): # pass return cls
__new__ 其实在 __init__ 之前创建一个对象, 且__ new__必须返回一个对象的, __init__不需要返回.
查看全部 -
@property 装饰的 method 调用的时候就不用()了. @classmethod 装饰的方法,需要类名来调用.
查看全部 -
类的三个特点
封装性,继承性,多态性
查看全部 -
jietu
查看全部 -
()(,,,).name._age.__weight().__weight pPerson(,,) (p.name) (p._age) (p.__getweight__()) (p._Person__weight) ((p)) (p.)
查看全部 -
请输入笔记内容...
查看全部 -
设置对象属性:
查询对象属性:
__getattr__:不是每次调用,查询不到时调用
__getattribute:每次都调用
查看全部 -
比较运算符:
__cmp__(self,other)、__eq__(self,other) 、__lt__(self,other) 、__gt__(self,other)
数字运算符:
__add__(self,other) 、 __sub__(self,other) 、 __mul__(self,other) 、 __div__(self,other)
逻辑运算符:
__or__(self,other) 、 __and__(self,other)
查看全部 -
对象实例化的过程:
查看全部 -
Magic Method:方法名的前后有两个下划线
如:def __innit__(self):
查看全部
举报
0/150
提交
取消