三大特性:封装,继承,多态
成员:
字段 静态字段(每个对象有一份)、普通字段(每个对象都有不同的数据)
方法 类方法(@classmethodcls)、静态方法(@staticmethod无需使用对象封装内容) 、 普通方法(使用对象中的数据)
特性 普通特性(@property讲方法伪造成字段)
判断类执行还是对象执行
self 对象调用,property
无self,类调用
成员修饰符:
共有
私有 __ 私有可以间接访问
私有字段__只有自己内部能访问,父类子类也无法访问到
class Foo:
xo = "xo"
__xo="xo"
def __init__(self):
self.__name = "我"
def __a(self):
print("私有")
def b(self):
#通过可以被外面访问的对象访问私有
self.__a()
Foo.xo
#报错
#Foo.__xo
obj = Foo()
#报错
#print(obj.name)
obj.b()
>>>
私有__init__初始化
__del__对象结束时执行
__call__对象(), obj = fun() obj()
class fun():
def __init__(self):
print("init")
def __call__(self, *args, **kwargs):
print("call")
r = fun()
r()
>>>
init
call
字典 /列表
__getitem__
__setitem__
__delitem__
class ddict(): #以字典的形式输出内容 def __getitem__(self, item): print(item) def __setitem__(self, key, value): print(key,value) def __delitem__(self, item): print(item ) r = ddict() r["aaaa"] r["aa"]=123 del r['aas'] r[1:3:2] r[1:3]=[11,22,33] del r[1:3] >>> aaaa aa 123 aas slice(1, 3, 2) slice(1, 3, None) [11, 22, 33] slice(1, 3, None)
__doc__注释

353

被折叠的 条评论
为什么被折叠?



