今日概要: 一、面向对象进阶 1、isinstance(obj,cls)和issubclass(sub,super) 2、__setattr__,__getattr__,__delattr__ 3、二次加工标准类型(包装/授权) 4、__setitem__,__getitem__,__delitem ...
分类:
编程语言 时间:
2017-06-19 09:47:48
阅读次数:
215
成员 类,对象=》静态字段,静态方法,普通字段,普通方法 通过类访问有:静态字段,静态方法 通过对象访问:普通字段,普通方法 成员修饰符 面向对象中一些常用特殊方法 __init__ __call__ __delitem__ 反射查找类的成员 反射: 反射导入模块,在找类然后初始化对象,最后根据对象 ...
分类:
其他好文 时间:
2017-04-26 15:53:08
阅读次数:
101
__setitem__,__getitem__,__delitem__ 这三个方法和__setattr__,__getattr__,__delattr__类似,都是设定,获取,删除时触发,不同的是这三个方法触发的情况是通过字典键值对赋值的方式. __str__,__repr__,__format__ ...
分类:
其他好文 时间:
2017-04-26 01:22:21
阅读次数:
224
#__setitem__赋值方法,在进行obj[name]=value时,会触发执行该方法#__delitem__删除方法,在进行del obj[name],就会触发执行该方法#__getitem__查询方法,在进行读取obj[name]的值时,就会触发执行该方法#把对象操作属性模拟成字典的格式#i ...
分类:
其他好文 时间:
2017-04-25 21:09:46
阅读次数:
167
关于__setitem__,__getitem__,delitem__ 类似于以前的学过的__setattr__,__getattr__... 不同之处在于item结尾的是用于对象以字典添加的形势添加,查看和删除属性的时候才会触发,如下例子: 接下来我们来看看__slots__: __slots__ ...
分类:
其他好文 时间:
2017-04-25 19:55:14
阅读次数:
214
__setitem__ __getitem__ __delitem__这三个函数 是通过字典形式来处理属性 字典形式使用中括号的方式获取值 ...
分类:
编程语言 时间:
2017-04-25 19:11:24
阅读次数:
299
class Foo: def __init__(self,name): self.name=name def __getitem__(self, item): print(self.__dict__[item]) def __setitem__(self, key, value): self.__d... ...
分类:
编程语言 时间:
2017-04-25 16:43:34
阅读次数:
229
obj[xxx]="xx"这种操作会触发对象的__setitem__方法。delobj["xxx"]这种操作会触发对象的__delitem__方法。obj["xxx"]触发对象的__getitem__方法。classFoo:def__init__(self,name):self.name=namedef__getitem__(self,item):print(self.__dict__[item])def__setitem__(self,ke..
分类:
编程语言 时间:
2017-04-21 14:57:49
阅读次数:
165
先从原理上分析切片运算: list的切片,内部是调用__getitem__,__setitem__,__delitem__和slice函数。而slice函数又是和range()函数相关的。 给切片传递的键是一个特殊的slice对象。该对象拥有可描述所请求切片方位的属性,例如: Python 的切片功 ...
分类:
编程语言 时间:
2017-04-15 00:02:11
阅读次数:
269
面向对象基础 面向对象中通过索引的方式访问对象,需要内部实现 __getitem__ 、__delitem__、__setitem__方法 #!/usr/bin/env python # -*- coding:utf-8 -*- class Foo(object): def __getitem__( ...
分类:
其他好文 时间:
2017-04-02 21:16:14
阅读次数:
255