1. 打印和输出相关
__str__
__repr__
分别应用于打印和直接显示
2.用于循环
如果一个类想被用于for循环,那这个类就必须实现__iter__()和__next__()方法
3.用下标获取元素
如果想要用下表[x]的方式来获取元素,name需要在类方法里面实现__getotem__()
如果要赋值用__setitem__()方法,如果要删除某个元素用__delitem__()方法
4.获得属性
如果定义class的时候没有定义某个属性,这个时候再去调用某个属性的话,这时候解释器就会调用__getattr__(self,‘score’)来尝试获得属性,这样我们就有机会