- >>> class X(object):
- ... def __getattribute__(self, name):
- ... if name == "__iter__":
- ... import new
- ... return new.instancemethod(lambda self: iter([1,2,3,4]), self, X)
- ...
- ... def __iter__(self):
- ... return iter([9,10,11,12])
- ...
- >>> x = X()
- >>> list(x)
- [9, 10, 11, 12]
- >>> list(x.__iter__())
- [1, 2, 3, 4]