Python类和对象四(十三)
魔法方法:
按位运算
按位于运算
只要相同才是1
或运算:
只要某个位是1结果就是1 、
按位非
将结果取反
按位异或:
左移和右移运算符:
右移两位
右移动n位,就是除以2的n次方
左移两位:
左移n位就是乘以2的n次方:
对象作为索引去用的时候才触发
属性访问相关的魔法方法:
索引、切片
这个方法可以响应单个下标索引的操作,又能支持代表范围的切片索引方式
如果一个对象定义了iter魔法方法,,他就是一个可迭代对象,如果可迭代对象定义了next魔法方法,他就是一个迭代器,比如说列表是一个可迭代对象,不是一个迭代器
for语句作的第一步操作,是将对象传入内置函数iter中,并由此拿到一个响应的迭代器,只有拿到迭代器才能拥有所需的next方法,然后第二部利用next魔法方法,进行迭代操作
自定义的迭代器