python 细数class中的 __**__
来源:互联网 发布:梅西和大罗谁厉害知乎 编辑:程序博客网 时间:2024/04/28 16:15
__init__(self, *values)
对象的初始化函数,初始化类的实例时,会调用这个方法__str__(self)
返回 print对象时要打印的东西,pirnt(obj)时会调用这个方法__iter__(self)
与__next__(self)
将对象 变为可迭代对象,__iter__()
用于iter()
,__next__
用于next()
__getitem__(self, key)
使得对象可以向类表一样使用,obj[2], obj[2:4]__setitem__(self, key, value)
可以使对象的key被赋值
- 1
- 1
__getattr__(self, attr)
如果对象没有所调用的属性的时候,就会把属性名送进这个方法,看看这个方法返回什么__getattribute__(self, item)
所有的属性访问都会经过这个接口
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
__setattr__(self, name, value)
当每次给一个属性赋值的时候,就会调用这个方法
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
__call__(self, *value)
使得类的实例可以像函数一样被调用__len__(self)
当执行len(obj)
时,被调用__slots__
这个和前几个不太一样,它是个类的属性,不是方法,这个用来限制类的实例所能动态添加的属性
细数用在class中的装饰器
@property
是一个装饰器,将一个方法当作属性调用@staticmethod
将方法定义成静态方法,不需要传入self
了@classmethod
将一个方法定义成类方法,传入cls
而不是self
@abstraction
将一个方法声明成抽象方法
阅读全文
0 0
- python 细数class中的 __**__
- __
- Python中的self和__init()__
- Python中的__init__()和__call()__函数
- python super().__init()__
- 1.python基础学习__函数中的参数
- raw_input() 与 input() __ Python
- raw_input() 与 input() __ Python
- raw_input() 与 input() __ Python
- raw_input() 与 input() __ Python
- raw_input() 与 input() __ Python
- raw_input() 与 input() __ Python
- raw_input() 与 input() __ Python
- raw_input() 与 input() __ Python
- raw_input() 与 input() __ Python
- raw_input() 与 input() __ Python
- raw_input() 与 input() __ Python
- python的魔法方法--__
- X Chen笔记---Centos网卡设置混杂模式的方法
- 剑指Offer—41—和为S的连续正数序列
- 文本分析--情感分析
- 文章标题
- const修饰符,以及指针常量,常量指针的理解
- python 细数class中的 __**__
- 物联网专用网络商用在即——LoRa离我们不远了
- HDOJ1711 KMP模板程序
- MySQL高可用介绍2-heartbeat测试
- 全面介绍Android的MVVM框架
- 深入分析ClassLoader
- List操作
- 查找命令(2)——locate
- vue使用params传参