class Defintions

In [1]:
class MyClass:
    """A simple example class"""
    i = 12345  # 'Class-level' variable
    
    def f(self):  # A function definition inside a class is known as a "method"
        return "hello world"
In [2]:
MyClass
Out[2]:
__main__.MyClass
In [3]:
type(MyClass)
Out[3]:
type
In [4]:
m = MyClass()
In [5]:
type(m)
Out[5]:
__main__.MyClass
In [6]:
l = MyClass()
In [7]:
objs = []
for i in range(1000):
    objs.append(MyClass())
In [8]:
objs
Out[8]:
[<__main__.MyClass at 0x1114eb2b0>,
 <__main__.MyClass at 0x111474080>,
 <__main__.MyClass at 0x111474780>,
 <__main__.MyClass at 0x1114746d8>,
 <__main__.MyClass at 0x11151c198>,
 <__main__.MyClass at 0x11151c0f0>,
 <__main__.MyClass at 0x11151c208>,
 <__main__.MyClass at 0x11151c1d0>,
 <__main__.MyClass at 0x11151c240>,
 <__main__.MyClass at 0x11151c080>,
 <__main__.MyClass at 0x11151c160>,
 <__main__.MyClass at 0x11151c278>,
 <__main__.MyClass at 0x11151c2b0>,
 <__main__.MyClass at 0x11151c2e8>,
 <__main__.MyClass at 0x11151c320>,
 <__main__.MyClass at 0x11151c358>,
 <__main__.MyClass at 0x11151c390>,
 <__main__.MyClass at 0x11151c3c8>,
 <__main__.MyClass at 0x11151c400>,
 <__main__.MyClass at 0x11151c438>,
 <__main__.MyClass at 0x11151c470>,
 <__main__.MyClass at 0x11151c4a8>,
 <__main__.MyClass at 0x11151c4e0>,
 <__main__.MyClass at 0x11151c518>,
 <__main__.MyClass at 0x11151c550>,
 <__main__.MyClass at 0x11151c588>,
 <__main__.MyClass at 0x11151c5c0>,
 <__main__.MyClass at 0x11151c5f8>,
 <__main__.MyClass at 0x11151c630>,
 <__main__.MyClass at 0x11151c668>,
 <__main__.MyClass at 0x11151c6a0>,
 <__main__.MyClass at 0x11151c6d8>,
 <__main__.MyClass at 0x11151c710>,
 <__main__.MyClass at 0x11151c748>,
 <__main__.MyClass at 0x11151c780>,
 <__main__.MyClass at 0x11151c7b8>,
 <__main__.MyClass at 0x11151c7f0>,
 <__main__.MyClass at 0x11151c828>,
 <__main__.MyClass at 0x11151c860>,
 <__main__.MyClass at 0x11151c898>,
 <__main__.MyClass at 0x11151c8d0>,
 <__main__.MyClass at 0x11151c908>,
 <__main__.MyClass at 0x11151c940>,
 <__main__.MyClass at 0x11151c978>,
 <__main__.MyClass at 0x11151c9b0>,
 <__main__.MyClass at 0x11151c9e8>,
 <__main__.MyClass at 0x11151ca20>,
 <__main__.MyClass at 0x11151ca58>,
 <__main__.MyClass at 0x11151ca90>,
 <__main__.MyClass at 0x11151cac8>,
 <__main__.MyClass at 0x11151cb00>,
 <__main__.MyClass at 0x11151cb38>,
 <__main__.MyClass at 0x11151cb70>,
 <__main__.MyClass at 0x11151cba8>,
 <__main__.MyClass at 0x11151cbe0>,
 <__main__.MyClass at 0x11151cc18>,
 <__main__.MyClass at 0x11151cc50>,
 <__main__.MyClass at 0x11151cc88>,
 <__main__.MyClass at 0x11151ccc0>,
 <__main__.MyClass at 0x11151ccf8>,
 <__main__.MyClass at 0x11151cd30>,
 <__main__.MyClass at 0x11151cd68>,
 <__main__.MyClass at 0x11151cda0>,
 <__main__.MyClass at 0x11151cdd8>,
 <__main__.MyClass at 0x11151ce10>,
 <__main__.MyClass at 0x11151ce48>,
 <__main__.MyClass at 0x11151ce80>,
 <__main__.MyClass at 0x11151ceb8>,
 <__main__.MyClass at 0x11151cef0>,
 <__main__.MyClass at 0x11151cf28>,
 <__main__.MyClass at 0x11151cf60>,
 <__main__.MyClass at 0x11151cf98>,
 <__main__.MyClass at 0x11151cfd0>,
 <__main__.MyClass at 0x11151e048>,
 <__main__.MyClass at 0x11151e080>,
 <__main__.MyClass at 0x11151e0b8>,
 <__main__.MyClass at 0x11151e0f0>,
 <__main__.MyClass at 0x11151e128>,
 <__main__.MyClass at 0x11151e160>,
 <__main__.MyClass at 0x11151e198>,
 <__main__.MyClass at 0x11151e1d0>,
 <__main__.MyClass at 0x11151e208>,
 <__main__.MyClass at 0x11151e240>,
 <__main__.MyClass at 0x11151e278>,
 <__main__.MyClass at 0x11151e2b0>,
 <__main__.MyClass at 0x11151e2e8>,
 <__main__.MyClass at 0x11151e320>,
 <__main__.MyClass at 0x11151e358>,
 <__main__.MyClass at 0x11151e390>,
 <__main__.MyClass at 0x11151e3c8>,
 <__main__.MyClass at 0x11151e400>,
 <__main__.MyClass at 0x11151e438>,
 <__main__.MyClass at 0x11151e470>,
 <__main__.MyClass at 0x11151e4a8>,
 <__main__.MyClass at 0x11151e4e0>,
 <__main__.MyClass at 0x11151e518>,
 <__main__.MyClass at 0x11151e550>,
 <__main__.MyClass at 0x11151e588>,
 <__main__.MyClass at 0x11151e5c0>,
 <__main__.MyClass at 0x11151e5f8>,
 <__main__.MyClass at 0x11151e630>,
 <__main__.MyClass at 0x11151e668>,
 <__main__.MyClass at 0x11151e6a0>,
 <__main__.MyClass at 0x11151e6d8>,
 <__main__.MyClass at 0x11151e710>,
 <__main__.MyClass at 0x11151e748>,
 <__main__.MyClass at 0x11151e780>,
 <__main__.MyClass at 0x11151e7b8>,
 <__main__.MyClass at 0x11151e7f0>,
 <__main__.MyClass at 0x11151e828>,
 <__main__.MyClass at 0x11151e860>,
 <__main__.MyClass at 0x11151e898>,
 <__main__.MyClass at 0x11151e8d0>,
 <__main__.MyClass at 0x11151e908>,
 <__main__.MyClass at 0x11151e940>,
 <__main__.MyClass at 0x11151e978>,
 <__main__.MyClass at 0x11151e9b0>,
 <__main__.MyClass at 0x11151e9e8>,
 <__main__.MyClass at 0x11151ea20>,
 <__main__.MyClass at 0x11151ea58>,
 <__main__.MyClass at 0x11151ea90>,
 <__main__.MyClass at 0x11151eac8>,
 <__main__.MyClass at 0x11151eb00>,
 <__main__.MyClass at 0x11151eb38>,
 <__main__.MyClass at 0x11151eb70>,
 <__main__.MyClass at 0x11151eba8>,
 <__main__.MyClass at 0x11151ebe0>,
 <__main__.MyClass at 0x11151ec18>,
 <__main__.MyClass at 0x11151ec50>,
 <__main__.MyClass at 0x11151ec88>,
 <__main__.MyClass at 0x11151ecc0>,
 <__main__.MyClass at 0x11151ecf8>,
 <__main__.MyClass at 0x11151ed30>,
 <__main__.MyClass at 0x11151ed68>,
 <__main__.MyClass at 0x11151eda0>,
 <__main__.MyClass at 0x11151edd8>,
 <__main__.MyClass at 0x11151ee10>,
 <__main__.MyClass at 0x11151ee48>,
 <__main__.MyClass at 0x11151ee80>,
 <__main__.MyClass at 0x11151eeb8>,
 <__main__.MyClass at 0x11151eef0>,
 <__main__.MyClass at 0x11151ef28>,
 <__main__.MyClass at 0x11151ef60>,
 <__main__.MyClass at 0x11151ef98>,
 <__main__.MyClass at 0x11151efd0>,
 <__main__.MyClass at 0x11151f048>,
 <__main__.MyClass at 0x11151f080>,
 <__main__.MyClass at 0x11151f0b8>,
 <__main__.MyClass at 0x11151f0f0>,
 <__main__.MyClass at 0x11151f128>,
 <__main__.MyClass at 0x11151f160>,
 <__main__.MyClass at 0x11151f198>,
 <__main__.MyClass at 0x11151f1d0>,
 <__main__.MyClass at 0x11151f208>,
 <__main__.MyClass at 0x11151f240>,
 <__main__.MyClass at 0x11151f278>,
 <__main__.MyClass at 0x11151f2b0>,
 <__main__.MyClass at 0x11151f2e8>,
 <__main__.MyClass at 0x11151f320>,
 <__main__.MyClass at 0x11151f358>,
 <__main__.MyClass at 0x11151f390>,
 <__main__.MyClass at 0x11151f3c8>,
 <__main__.MyClass at 0x11151f400>,
 <__main__.MyClass at 0x11151f438>,
 <__main__.MyClass at 0x11151f470>,
 <__main__.MyClass at 0x11151f4a8>,
 <__main__.MyClass at 0x11151f4e0>,
 <__main__.MyClass at 0x11151f518>,
 <__main__.MyClass at 0x11151f550>,
 <__main__.MyClass at 0x11151f588>,
 <__main__.MyClass at 0x11151f5c0>,
 <__main__.MyClass at 0x11151f5f8>,
 <__main__.MyClass at 0x11151f630>,
 <__main__.MyClass at 0x11151f668>,
 <__main__.MyClass at 0x11151f6a0>,
 <__main__.MyClass at 0x11151f6d8>,
 <__main__.MyClass at 0x11151f710>,
 <__main__.MyClass at 0x11151f748>,
 <__main__.MyClass at 0x11151f780>,
 <__main__.MyClass at 0x11151f7b8>,
 <__main__.MyClass at 0x11151f7f0>,
 <__main__.MyClass at 0x11151f828>,
 <__main__.MyClass at 0x11151f860>,
 <__main__.MyClass at 0x11151f898>,
 <__main__.MyClass at 0x11151f8d0>,
 <__main__.MyClass at 0x11151f908>,
 <__main__.MyClass at 0x11151f940>,
 <__main__.MyClass at 0x11151f978>,
 <__main__.MyClass at 0x11151f9b0>,
 <__main__.MyClass at 0x11151f9e8>,
 <__main__.MyClass at 0x11151fa20>,
 <__main__.MyClass at 0x11151fa58>,
 <__main__.MyClass at 0x11151fa90>,
 <__main__.MyClass at 0x11151fac8>,
 <__main__.MyClass at 0x11151fb00>,
 <__main__.MyClass at 0x11151fb38>,
 <__main__.MyClass at 0x11151fb70>,
 <__main__.MyClass at 0x11151fba8>,
 <__main__.MyClass at 0x11151fbe0>,
 <__main__.MyClass at 0x11151fc18>,
 <__main__.MyClass at 0x11151fc50>,
 <__main__.MyClass at 0x11151fc88>,
 <__main__.MyClass at 0x11151fcc0>,
 <__main__.MyClass at 0x11151fcf8>,
 <__main__.MyClass at 0x11151fd30>,
 <__main__.MyClass at 0x11151fd68>,
 <__main__.MyClass at 0x11151fda0>,
 <__main__.MyClass at 0x11151fdd8>,
 <__main__.MyClass at 0x11151fe10>,
 <__main__.MyClass at 0x11151fe48>,
 <__main__.MyClass at 0x11151fe80>,
 <__main__.MyClass at 0x11151feb8>,
 <__main__.MyClass at 0x11151fef0>,
 <__main__.MyClass at 0x11151ff28>,
 <__main__.MyClass at 0x11151ff60>,
 <__main__.MyClass at 0x11151ff98>,
 <__main__.MyClass at 0x11151ffd0>,
 <__main__.MyClass at 0x111520048>,
 <__main__.MyClass at 0x111520080>,
 <__main__.MyClass at 0x1115200b8>,
 <__main__.MyClass at 0x1115200f0>,
 <__main__.MyClass at 0x111520128>,
 <__main__.MyClass at 0x111520160>,
 <__main__.MyClass at 0x111520198>,
 <__main__.MyClass at 0x1115201d0>,
 <__main__.MyClass at 0x111520208>,
 <__main__.MyClass at 0x111520240>,
 <__main__.MyClass at 0x111520278>,
 <__main__.MyClass at 0x1115202b0>,
 <__main__.MyClass at 0x1115202e8>,
 <__main__.MyClass at 0x111520320>,
 <__main__.MyClass at 0x111520358>,
 <__main__.MyClass at 0x111520390>,
 <__main__.MyClass at 0x1115203c8>,
 <__main__.MyClass at 0x111520400>,
 <__main__.MyClass at 0x111520438>,
 <__main__.MyClass at 0x111520470>,
 <__main__.MyClass at 0x1115204a8>,
 <__main__.MyClass at 0x1115204e0>,
 <__main__.MyClass at 0x111520518>,
 <__main__.MyClass at 0x111520550>,
 <__main__.MyClass at 0x111520588>,
 <__main__.MyClass at 0x1115205c0>,
 <__main__.MyClass at 0x1115205f8>,
 <__main__.MyClass at 0x111520630>,
 <__main__.MyClass at 0x111520668>,
 <__main__.MyClass at 0x1115206a0>,
 <__main__.MyClass at 0x1115206d8>,
 <__main__.MyClass at 0x111520710>,
 <__main__.MyClass at 0x111520748>,
 <__main__.MyClass at 0x111520780>,
 <__main__.MyClass at 0x1115207b8>,
 <__main__.MyClass at 0x1115207f0>,
 <__main__.MyClass at 0x111520828>,
 <__main__.MyClass at 0x111520860>,
 <__main__.MyClass at 0x111520898>,
 <__main__.MyClass at 0x1115208d0>,
 <__main__.MyClass at 0x111520908>,
 <__main__.MyClass at 0x111520940>,
 <__main__.MyClass at 0x111520978>,
 <__main__.MyClass at 0x1115209b0>,
 <__main__.MyClass at 0x1115209e8>,
 <__main__.MyClass at 0x111520a20>,
 <__main__.MyClass at 0x111520a58>,
 <__main__.MyClass at 0x111520a90>,
 <__main__.MyClass at 0x111520ac8>,
 <__main__.MyClass at 0x111520b00>,
 <__main__.MyClass at 0x111520b38>,
 <__main__.MyClass at 0x111520b70>,
 <__main__.MyClass at 0x111520ba8>,
 <__main__.MyClass at 0x111520be0>,
 <__main__.MyClass at 0x111520c18>,
 <__main__.MyClass at 0x111520c50>,
 <__main__.MyClass at 0x111520c88>,
 <__main__.MyClass at 0x111520cc0>,
 <__main__.MyClass at 0x111520cf8>,
 <__main__.MyClass at 0x111520d30>,
 <__main__.MyClass at 0x111520d68>,
 <__main__.MyClass at 0x111520da0>,
 <__main__.MyClass at 0x111520dd8>,
 <__main__.MyClass at 0x111520e10>,
 <__main__.MyClass at 0x111520e48>,
 <__main__.MyClass at 0x111520e80>,
 <__main__.MyClass at 0x111520eb8>,
 <__main__.MyClass at 0x111520ef0>,
 <__main__.MyClass at 0x111520f28>,
 <__main__.MyClass at 0x111520f60>,
 <__main__.MyClass at 0x111520f98>,
 <__main__.MyClass at 0x111520fd0>,
 <__main__.MyClass at 0x111521048>,
 <__main__.MyClass at 0x111521080>,
 <__main__.MyClass at 0x1115210b8>,
 <__main__.MyClass at 0x1115210f0>,
 <__main__.MyClass at 0x111521128>,
 <__main__.MyClass at 0x111521160>,
 <__main__.MyClass at 0x111521198>,
 <__main__.MyClass at 0x1115211d0>,
 <__main__.MyClass at 0x111521208>,
 <__main__.MyClass at 0x111521240>,
 <__main__.MyClass at 0x111521278>,
 <__main__.MyClass at 0x1115212b0>,
 <__main__.MyClass at 0x1115212e8>,
 <__main__.MyClass at 0x111521320>,
 <__main__.MyClass at 0x111521358>,
 <__main__.MyClass at 0x111521390>,
 <__main__.MyClass at 0x1115213c8>,
 <__main__.MyClass at 0x111521400>,
 <__main__.MyClass at 0x111521438>,
 <__main__.MyClass at 0x111521470>,
 <__main__.MyClass at 0x1115214a8>,
 <__main__.MyClass at 0x1115214e0>,
 <__main__.MyClass at 0x111521518>,
 <__main__.MyClass at 0x111521550>,
 <__main__.MyClass at 0x111521588>,
 <__main__.MyClass at 0x1115215c0>,
 <__main__.MyClass at 0x1115215f8>,
 <__main__.MyClass at 0x111521630>,
 <__main__.MyClass at 0x111521668>,
 <__main__.MyClass at 0x1115216a0>,
 <__main__.MyClass at 0x1115216d8>,
 <__main__.MyClass at 0x111521710>,
 <__main__.MyClass at 0x111521748>,
 <__main__.MyClass at 0x111521780>,
 <__main__.MyClass at 0x1115217b8>,
 <__main__.MyClass at 0x1115217f0>,
 <__main__.MyClass at 0x111521828>,
 <__main__.MyClass at 0x111521860>,
 <__main__.MyClass at 0x111521898>,
 <__main__.MyClass at 0x1115218d0>,
 <__main__.MyClass at 0x111521908>,
 <__main__.MyClass at 0x111521940>,
 <__main__.MyClass at 0x111521978>,
 <__main__.MyClass at 0x1115219b0>,
 <__main__.MyClass at 0x1115219e8>,
 <__main__.MyClass at 0x111521a20>,
 <__main__.MyClass at 0x111521a58>,
 <__main__.MyClass at 0x111521a90>,
 <__main__.MyClass at 0x111521ac8>,
 <__main__.MyClass at 0x111521b00>,
 <__main__.MyClass at 0x111521b38>,
 <__main__.MyClass at 0x111521b70>,
 <__main__.MyClass at 0x111521ba8>,
 <__main__.MyClass at 0x111521be0>,
 <__main__.MyClass at 0x111521c18>,
 <__main__.MyClass at 0x111521c50>,
 <__main__.MyClass at 0x111521c88>,
 <__main__.MyClass at 0x111521cc0>,
 <__main__.MyClass at 0x111521cf8>,
 <__main__.MyClass at 0x111521d30>,
 <__main__.MyClass at 0x111521d68>,
 <__main__.MyClass at 0x111521da0>,
 <__main__.MyClass at 0x111521dd8>,
 <__main__.MyClass at 0x111521e10>,
 <__main__.MyClass at 0x111521e48>,
 <__main__.MyClass at 0x111521e80>,
 <__main__.MyClass at 0x111521eb8>,
 <__main__.MyClass at 0x111521ef0>,
 <__main__.MyClass at 0x111521f28>,
 <__main__.MyClass at 0x111521f60>,
 <__main__.MyClass at 0x111521f98>,
 <__main__.MyClass at 0x111521fd0>,
 <__main__.MyClass at 0x111522048>,
 <__main__.MyClass at 0x111522080>,
 <__main__.MyClass at 0x1115220b8>,
 <__main__.MyClass at 0x1115220f0>,
 <__main__.MyClass at 0x111522128>,
 <__main__.MyClass at 0x111522160>,
 <__main__.MyClass at 0x111522198>,
 <__main__.MyClass at 0x1115221d0>,
 <__main__.MyClass at 0x111522208>,
 <__main__.MyClass at 0x111522240>,
 <__main__.MyClass at 0x111522278>,
 <__main__.MyClass at 0x1115222b0>,
 <__main__.MyClass at 0x1115222e8>,
 <__main__.MyClass at 0x111522320>,
 <__main__.MyClass at 0x111522358>,
 <__main__.MyClass at 0x111522390>,
 <__main__.MyClass at 0x1115223c8>,
 <__main__.MyClass at 0x111522400>,
 <__main__.MyClass at 0x111522438>,
 <__main__.MyClass at 0x111522470>,
 <__main__.MyClass at 0x1115224a8>,
 <__main__.MyClass at 0x1115224e0>,
 <__main__.MyClass at 0x111522518>,
 <__main__.MyClass at 0x111522550>,
 <__main__.MyClass at 0x111522588>,
 <__main__.MyClass at 0x1115225c0>,
 <__main__.MyClass at 0x1115225f8>,
 <__main__.MyClass at 0x111522630>,
 <__main__.MyClass at 0x111522668>,
 <__main__.MyClass at 0x1115226a0>,
 <__main__.MyClass at 0x1115226d8>,
 <__main__.MyClass at 0x111522710>,
 <__main__.MyClass at 0x111522748>,
 <__main__.MyClass at 0x111522780>,
 <__main__.MyClass at 0x1115227b8>,
 <__main__.MyClass at 0x1115227f0>,
 <__main__.MyClass at 0x111522828>,
 <__main__.MyClass at 0x111522860>,
 <__main__.MyClass at 0x111522898>,
 <__main__.MyClass at 0x1115228d0>,
 <__main__.MyClass at 0x111522908>,
 <__main__.MyClass at 0x111522940>,
 <__main__.MyClass at 0x111522978>,
 <__main__.MyClass at 0x1115229b0>,
 <__main__.MyClass at 0x1115229e8>,
 <__main__.MyClass at 0x111522a20>,
 <__main__.MyClass at 0x111522a58>,
 <__main__.MyClass at 0x111522a90>,
 <__main__.MyClass at 0x111522ac8>,
 <__main__.MyClass at 0x111522b00>,
 <__main__.MyClass at 0x111522b38>,
 <__main__.MyClass at 0x111522b70>,
 <__main__.MyClass at 0x111522ba8>,
 <__main__.MyClass at 0x111522be0>,
 <__main__.MyClass at 0x111522c18>,
 <__main__.MyClass at 0x111522c50>,
 <__main__.MyClass at 0x111522c88>,
 <__main__.MyClass at 0x111522cc0>,
 <__main__.MyClass at 0x111522cf8>,
 <__main__.MyClass at 0x111522d30>,
 <__main__.MyClass at 0x111522d68>,
 <__main__.MyClass at 0x111522da0>,
 <__main__.MyClass at 0x111522dd8>,
 <__main__.MyClass at 0x111522e10>,
 <__main__.MyClass at 0x111522e48>,
 <__main__.MyClass at 0x111522e80>,
 <__main__.MyClass at 0x111522eb8>,
 <__main__.MyClass at 0x111522ef0>,
 <__main__.MyClass at 0x111522f28>,
 <__main__.MyClass at 0x111522f60>,
 <__main__.MyClass at 0x111522f98>,
 <__main__.MyClass at 0x111522fd0>,
 <__main__.MyClass at 0x111523048>,
 <__main__.MyClass at 0x111523080>,
 <__main__.MyClass at 0x1115230b8>,
 <__main__.MyClass at 0x1115230f0>,
 <__main__.MyClass at 0x111523128>,
 <__main__.MyClass at 0x111523160>,
 <__main__.MyClass at 0x111523198>,
 <__main__.MyClass at 0x1115231d0>,
 <__main__.MyClass at 0x111523208>,
 <__main__.MyClass at 0x111523240>,
 <__main__.MyClass at 0x111523278>,
 <__main__.MyClass at 0x1115232b0>,
 <__main__.MyClass at 0x1115232e8>,
 <__main__.MyClass at 0x111523320>,
 <__main__.MyClass at 0x111523358>,
 <__main__.MyClass at 0x111523390>,
 <__main__.MyClass at 0x1115233c8>,
 <__main__.MyClass at 0x111523400>,
 <__main__.MyClass at 0x111523438>,
 <__main__.MyClass at 0x111523470>,
 <__main__.MyClass at 0x1115234a8>,
 <__main__.MyClass at 0x1115234e0>,
 <__main__.MyClass at 0x111523518>,
 <__main__.MyClass at 0x111523550>,
 <__main__.MyClass at 0x111523588>,
 <__main__.MyClass at 0x1115235c0>,
 <__main__.MyClass at 0x1115235f8>,
 <__main__.MyClass at 0x111523630>,
 <__main__.MyClass at 0x111523668>,
 <__main__.MyClass at 0x1115236a0>,
 <__main__.MyClass at 0x1115236d8>,
 <__main__.MyClass at 0x111523710>,
 <__main__.MyClass at 0x111523748>,
 <__main__.MyClass at 0x111523780>,
 <__main__.MyClass at 0x1115237b8>,
 <__main__.MyClass at 0x1115237f0>,
 <__main__.MyClass at 0x111523828>,
 <__main__.MyClass at 0x111523860>,
 <__main__.MyClass at 0x111523898>,
 <__main__.MyClass at 0x1115238d0>,
 <__main__.MyClass at 0x111523908>,
 <__main__.MyClass at 0x111523940>,
 <__main__.MyClass at 0x111523978>,
 <__main__.MyClass at 0x1115239b0>,
 <__main__.MyClass at 0x1115239e8>,
 <__main__.MyClass at 0x111523a20>,
 <__main__.MyClass at 0x111523a58>,
 <__main__.MyClass at 0x111523a90>,
 <__main__.MyClass at 0x111523ac8>,
 <__main__.MyClass at 0x111523b00>,
 <__main__.MyClass at 0x111523b38>,
 <__main__.MyClass at 0x111523b70>,
 <__main__.MyClass at 0x111523ba8>,
 <__main__.MyClass at 0x111523be0>,
 <__main__.MyClass at 0x111523c18>,
 <__main__.MyClass at 0x111523c50>,
 <__main__.MyClass at 0x111523c88>,
 <__main__.MyClass at 0x111523cc0>,
 <__main__.MyClass at 0x111523cf8>,
 <__main__.MyClass at 0x111523d30>,
 <__main__.MyClass at 0x111523d68>,
 <__main__.MyClass at 0x111523da0>,
 <__main__.MyClass at 0x111523dd8>,
 <__main__.MyClass at 0x111523e10>,
 <__main__.MyClass at 0x111523e48>,
 <__main__.MyClass at 0x111523e80>,
 <__main__.MyClass at 0x111523eb8>,
 <__main__.MyClass at 0x111523ef0>,
 <__main__.MyClass at 0x111523f28>,
 <__main__.MyClass at 0x111523f60>,
 <__main__.MyClass at 0x111523f98>,
 <__main__.MyClass at 0x111523fd0>,
 <__main__.MyClass at 0x111524048>,
 <__main__.MyClass at 0x111524080>,
 <__main__.MyClass at 0x1115240b8>,
 <__main__.MyClass at 0x1115240f0>,
 <__main__.MyClass at 0x111524128>,
 <__main__.MyClass at 0x111524160>,
 <__main__.MyClass at 0x111524198>,
 <__main__.MyClass at 0x1115241d0>,
 <__main__.MyClass at 0x111524208>,
 <__main__.MyClass at 0x111524240>,
 <__main__.MyClass at 0x111524278>,
 <__main__.MyClass at 0x1115242b0>,
 <__main__.MyClass at 0x1115242e8>,
 <__main__.MyClass at 0x111524320>,
 <__main__.MyClass at 0x111524358>,
 <__main__.MyClass at 0x111524390>,
 <__main__.MyClass at 0x1115243c8>,
 <__main__.MyClass at 0x111524400>,
 <__main__.MyClass at 0x111524438>,
 <__main__.MyClass at 0x111524470>,
 <__main__.MyClass at 0x1115244a8>,
 <__main__.MyClass at 0x1115244e0>,
 <__main__.MyClass at 0x111524518>,
 <__main__.MyClass at 0x111524550>,
 <__main__.MyClass at 0x111524588>,
 <__main__.MyClass at 0x1115245c0>,
 <__main__.MyClass at 0x1115245f8>,
 <__main__.MyClass at 0x111524630>,
 <__main__.MyClass at 0x111524668>,
 <__main__.MyClass at 0x1115246a0>,
 <__main__.MyClass at 0x1115246d8>,
 <__main__.MyClass at 0x111524710>,
 <__main__.MyClass at 0x111524748>,
 <__main__.MyClass at 0x111524780>,
 <__main__.MyClass at 0x1115247b8>,
 <__main__.MyClass at 0x1115247f0>,
 <__main__.MyClass at 0x111524828>,
 <__main__.MyClass at 0x111524860>,
 <__main__.MyClass at 0x111524898>,
 <__main__.MyClass at 0x1115248d0>,
 <__main__.MyClass at 0x111524908>,
 <__main__.MyClass at 0x111524940>,
 <__main__.MyClass at 0x111524978>,
 <__main__.MyClass at 0x1115249b0>,
 <__main__.MyClass at 0x1115249e8>,
 <__main__.MyClass at 0x111524a20>,
 <__main__.MyClass at 0x111524a58>,
 <__main__.MyClass at 0x111524a90>,
 <__main__.MyClass at 0x111524ac8>,
 <__main__.MyClass at 0x111524b00>,
 <__main__.MyClass at 0x111524b38>,
 <__main__.MyClass at 0x111524b70>,
 <__main__.MyClass at 0x111524ba8>,
 <__main__.MyClass at 0x111524be0>,
 <__main__.MyClass at 0x111524c18>,
 <__main__.MyClass at 0x111524c50>,
 <__main__.MyClass at 0x111524c88>,
 <__main__.MyClass at 0x111524cc0>,
 <__main__.MyClass at 0x111524cf8>,
 <__main__.MyClass at 0x111524d30>,
 <__main__.MyClass at 0x111524d68>,
 <__main__.MyClass at 0x111524da0>,
 <__main__.MyClass at 0x111524dd8>,
 <__main__.MyClass at 0x111524e10>,
 <__main__.MyClass at 0x111524e48>,
 <__main__.MyClass at 0x111524e80>,
 <__main__.MyClass at 0x111524eb8>,
 <__main__.MyClass at 0x111524ef0>,
 <__main__.MyClass at 0x111524f28>,
 <__main__.MyClass at 0x111524f60>,
 <__main__.MyClass at 0x111524f98>,
 <__main__.MyClass at 0x111524fd0>,
 <__main__.MyClass at 0x111525048>,
 <__main__.MyClass at 0x111525080>,
 <__main__.MyClass at 0x1115250b8>,
 <__main__.MyClass at 0x1115250f0>,
 <__main__.MyClass at 0x111525128>,
 <__main__.MyClass at 0x111525160>,
 <__main__.MyClass at 0x111525198>,
 <__main__.MyClass at 0x1115251d0>,
 <__main__.MyClass at 0x111525208>,
 <__main__.MyClass at 0x111525240>,
 <__main__.MyClass at 0x111525278>,
 <__main__.MyClass at 0x1115252b0>,
 <__main__.MyClass at 0x1115252e8>,
 <__main__.MyClass at 0x111525320>,
 <__main__.MyClass at 0x111525358>,
 <__main__.MyClass at 0x111525390>,
 <__main__.MyClass at 0x1115253c8>,
 <__main__.MyClass at 0x111525400>,
 <__main__.MyClass at 0x111525438>,
 <__main__.MyClass at 0x111525470>,
 <__main__.MyClass at 0x1115254a8>,
 <__main__.MyClass at 0x1115254e0>,
 <__main__.MyClass at 0x111525518>,
 <__main__.MyClass at 0x111525550>,
 <__main__.MyClass at 0x111525588>,
 <__main__.MyClass at 0x1115255c0>,
 <__main__.MyClass at 0x1115255f8>,
 <__main__.MyClass at 0x111525630>,
 <__main__.MyClass at 0x111525668>,
 <__main__.MyClass at 0x1115256a0>,
 <__main__.MyClass at 0x1115256d8>,
 <__main__.MyClass at 0x111525710>,
 <__main__.MyClass at 0x111525748>,
 <__main__.MyClass at 0x111525780>,
 <__main__.MyClass at 0x1115257b8>,
 <__main__.MyClass at 0x1115257f0>,
 <__main__.MyClass at 0x111525828>,
 <__main__.MyClass at 0x111525860>,
 <__main__.MyClass at 0x111525898>,
 <__main__.MyClass at 0x1115258d0>,
 <__main__.MyClass at 0x111525908>,
 <__main__.MyClass at 0x111525940>,
 <__main__.MyClass at 0x111525978>,
 <__main__.MyClass at 0x1115259b0>,
 <__main__.MyClass at 0x1115259e8>,
 <__main__.MyClass at 0x111525a20>,
 <__main__.MyClass at 0x111525a58>,
 <__main__.MyClass at 0x111525a90>,
 <__main__.MyClass at 0x111525ac8>,
 <__main__.MyClass at 0x111525b00>,
 <__main__.MyClass at 0x111525b38>,
 <__main__.MyClass at 0x111525b70>,
 <__main__.MyClass at 0x111525ba8>,
 <__main__.MyClass at 0x111525be0>,
 <__main__.MyClass at 0x111525c18>,
 <__main__.MyClass at 0x111525c50>,
 <__main__.MyClass at 0x111525c88>,
 <__main__.MyClass at 0x111525cc0>,
 <__main__.MyClass at 0x111525cf8>,
 <__main__.MyClass at 0x111525d30>,
 <__main__.MyClass at 0x111525d68>,
 <__main__.MyClass at 0x111525da0>,
 <__main__.MyClass at 0x111525dd8>,
 <__main__.MyClass at 0x111525e10>,
 <__main__.MyClass at 0x111525e48>,
 <__main__.MyClass at 0x111525e80>,
 <__main__.MyClass at 0x111525eb8>,
 <__main__.MyClass at 0x111525ef0>,
 <__main__.MyClass at 0x111525f28>,
 <__main__.MyClass at 0x111525f60>,
 <__main__.MyClass at 0x111525f98>,
 <__main__.MyClass at 0x111525fd0>,
 <__main__.MyClass at 0x111526048>,
 <__main__.MyClass at 0x111526080>,
 <__main__.MyClass at 0x1115260b8>,
 <__main__.MyClass at 0x1115260f0>,
 <__main__.MyClass at 0x111526128>,
 <__main__.MyClass at 0x111526160>,
 <__main__.MyClass at 0x111526198>,
 <__main__.MyClass at 0x1115261d0>,
 <__main__.MyClass at 0x111526208>,
 <__main__.MyClass at 0x111526240>,
 <__main__.MyClass at 0x111526278>,
 <__main__.MyClass at 0x1115262b0>,
 <__main__.MyClass at 0x1115262e8>,
 <__main__.MyClass at 0x111526320>,
 <__main__.MyClass at 0x111526358>,
 <__main__.MyClass at 0x111526390>,
 <__main__.MyClass at 0x1115263c8>,
 <__main__.MyClass at 0x111526400>,
 <__main__.MyClass at 0x111526438>,
 <__main__.MyClass at 0x111526470>,
 <__main__.MyClass at 0x1115264a8>,
 <__main__.MyClass at 0x1115264e0>,
 <__main__.MyClass at 0x111526518>,
 <__main__.MyClass at 0x111526550>,
 <__main__.MyClass at 0x111526588>,
 <__main__.MyClass at 0x1115265c0>,
 <__main__.MyClass at 0x1115265f8>,
 <__main__.MyClass at 0x111526630>,
 <__main__.MyClass at 0x111526668>,
 <__main__.MyClass at 0x1115266a0>,
 <__main__.MyClass at 0x1115266d8>,
 <__main__.MyClass at 0x111526710>,
 <__main__.MyClass at 0x111526748>,
 <__main__.MyClass at 0x111526780>,
 <__main__.MyClass at 0x1115267b8>,
 <__main__.MyClass at 0x1115267f0>,
 <__main__.MyClass at 0x111526828>,
 <__main__.MyClass at 0x111526860>,
 <__main__.MyClass at 0x111526898>,
 <__main__.MyClass at 0x1115268d0>,
 <__main__.MyClass at 0x111526908>,
 <__main__.MyClass at 0x111526940>,
 <__main__.MyClass at 0x111526978>,
 <__main__.MyClass at 0x1115269b0>,
 <__main__.MyClass at 0x1115269e8>,
 <__main__.MyClass at 0x111526a20>,
 <__main__.MyClass at 0x111526a58>,
 <__main__.MyClass at 0x111526a90>,
 <__main__.MyClass at 0x111526ac8>,
 <__main__.MyClass at 0x111526b00>,
 <__main__.MyClass at 0x111526b38>,
 <__main__.MyClass at 0x111526b70>,
 <__main__.MyClass at 0x111526ba8>,
 <__main__.MyClass at 0x111526be0>,
 <__main__.MyClass at 0x111526c18>,
 <__main__.MyClass at 0x111526c50>,
 <__main__.MyClass at 0x111526c88>,
 <__main__.MyClass at 0x111526cc0>,
 <__main__.MyClass at 0x111526cf8>,
 <__main__.MyClass at 0x111526d30>,
 <__main__.MyClass at 0x111526d68>,
 <__main__.MyClass at 0x111526da0>,
 <__main__.MyClass at 0x111526dd8>,
 <__main__.MyClass at 0x111526e10>,
 <__main__.MyClass at 0x111526e48>,
 <__main__.MyClass at 0x111526e80>,
 <__main__.MyClass at 0x111526eb8>,
 <__main__.MyClass at 0x111526ef0>,
 <__main__.MyClass at 0x111526f28>,
 <__main__.MyClass at 0x111526f60>,
 <__main__.MyClass at 0x111526f98>,
 <__main__.MyClass at 0x111526fd0>,
 <__main__.MyClass at 0x111527048>,
 <__main__.MyClass at 0x111527080>,
 <__main__.MyClass at 0x1115270b8>,
 <__main__.MyClass at 0x1115270f0>,
 <__main__.MyClass at 0x111527128>,
 <__main__.MyClass at 0x111527160>,
 <__main__.MyClass at 0x111527198>,
 <__main__.MyClass at 0x1115271d0>,
 <__main__.MyClass at 0x111527208>,
 <__main__.MyClass at 0x111527240>,
 <__main__.MyClass at 0x111527278>,
 <__main__.MyClass at 0x1115272b0>,
 <__main__.MyClass at 0x1115272e8>,
 <__main__.MyClass at 0x111527320>,
 <__main__.MyClass at 0x111527358>,
 <__main__.MyClass at 0x111527390>,
 <__main__.MyClass at 0x1115273c8>,
 <__main__.MyClass at 0x111527400>,
 <__main__.MyClass at 0x111527438>,
 <__main__.MyClass at 0x111527470>,
 <__main__.MyClass at 0x1115274a8>,
 <__main__.MyClass at 0x1115274e0>,
 <__main__.MyClass at 0x111527518>,
 <__main__.MyClass at 0x111527550>,
 <__main__.MyClass at 0x111527588>,
 <__main__.MyClass at 0x1115275c0>,
 <__main__.MyClass at 0x1115275f8>,
 <__main__.MyClass at 0x111527630>,
 <__main__.MyClass at 0x111527668>,
 <__main__.MyClass at 0x1115276a0>,
 <__main__.MyClass at 0x1115276d8>,
 <__main__.MyClass at 0x111527710>,
 <__main__.MyClass at 0x111527748>,
 <__main__.MyClass at 0x111527780>,
 <__main__.MyClass at 0x1115277b8>,
 <__main__.MyClass at 0x1115277f0>,
 <__main__.MyClass at 0x111527828>,
 <__main__.MyClass at 0x111527860>,
 <__main__.MyClass at 0x111527898>,
 <__main__.MyClass at 0x1115278d0>,
 <__main__.MyClass at 0x111527908>,
 <__main__.MyClass at 0x111527940>,
 <__main__.MyClass at 0x111527978>,
 <__main__.MyClass at 0x1115279b0>,
 <__main__.MyClass at 0x1115279e8>,
 <__main__.MyClass at 0x111527a20>,
 <__main__.MyClass at 0x111527a58>,
 <__main__.MyClass at 0x111527a90>,
 <__main__.MyClass at 0x111527ac8>,
 <__main__.MyClass at 0x111527b00>,
 <__main__.MyClass at 0x111527b38>,
 <__main__.MyClass at 0x111527b70>,
 <__main__.MyClass at 0x111527ba8>,
 <__main__.MyClass at 0x111527be0>,
 <__main__.MyClass at 0x111527c18>,
 <__main__.MyClass at 0x111527c50>,
 <__main__.MyClass at 0x111527c88>,
 <__main__.MyClass at 0x111527cc0>,
 <__main__.MyClass at 0x111527cf8>,
 <__main__.MyClass at 0x111527d30>,
 <__main__.MyClass at 0x111527d68>,
 <__main__.MyClass at 0x111527da0>,
 <__main__.MyClass at 0x111527dd8>,
 <__main__.MyClass at 0x111527e10>,
 <__main__.MyClass at 0x111527e48>,
 <__main__.MyClass at 0x111527e80>,
 <__main__.MyClass at 0x111527eb8>,
 <__main__.MyClass at 0x111527ef0>,
 <__main__.MyClass at 0x111527f28>,
 <__main__.MyClass at 0x111527f60>,
 <__main__.MyClass at 0x111527f98>,
 <__main__.MyClass at 0x111527fd0>,
 <__main__.MyClass at 0x111528048>,
 <__main__.MyClass at 0x111528080>,
 <__main__.MyClass at 0x1115280b8>,
 <__main__.MyClass at 0x1115280f0>,
 <__main__.MyClass at 0x111528128>,
 <__main__.MyClass at 0x111528160>,
 <__main__.MyClass at 0x111528198>,
 <__main__.MyClass at 0x1115281d0>,
 <__main__.MyClass at 0x111528208>,
 <__main__.MyClass at 0x111528240>,
 <__main__.MyClass at 0x111528278>,
 <__main__.MyClass at 0x1115282b0>,
 <__main__.MyClass at 0x1115282e8>,
 <__main__.MyClass at 0x111528320>,
 <__main__.MyClass at 0x111528358>,
 <__main__.MyClass at 0x111528390>,
 <__main__.MyClass at 0x1115283c8>,
 <__main__.MyClass at 0x111528400>,
 <__main__.MyClass at 0x111528438>,
 <__main__.MyClass at 0x111528470>,
 <__main__.MyClass at 0x1115284a8>,
 <__main__.MyClass at 0x1115284e0>,
 <__main__.MyClass at 0x111528518>,
 <__main__.MyClass at 0x111528550>,
 <__main__.MyClass at 0x111528588>,
 <__main__.MyClass at 0x1115285c0>,
 <__main__.MyClass at 0x1115285f8>,
 <__main__.MyClass at 0x111528630>,
 <__main__.MyClass at 0x111528668>,
 <__main__.MyClass at 0x1115286a0>,
 <__main__.MyClass at 0x1115286d8>,
 <__main__.MyClass at 0x111528710>,
 <__main__.MyClass at 0x111528748>,
 <__main__.MyClass at 0x111528780>,
 <__main__.MyClass at 0x1115287b8>,
 <__main__.MyClass at 0x1115287f0>,
 <__main__.MyClass at 0x111528828>,
 <__main__.MyClass at 0x111528860>,
 <__main__.MyClass at 0x111528898>,
 <__main__.MyClass at 0x1115288d0>,
 <__main__.MyClass at 0x111528908>,
 <__main__.MyClass at 0x111528940>,
 <__main__.MyClass at 0x111528978>,
 <__main__.MyClass at 0x1115289b0>,
 <__main__.MyClass at 0x1115289e8>,
 <__main__.MyClass at 0x111528a20>,
 <__main__.MyClass at 0x111528a58>,
 <__main__.MyClass at 0x111528a90>,
 <__main__.MyClass at 0x111528ac8>,
 <__main__.MyClass at 0x111528b00>,
 <__main__.MyClass at 0x111528b38>,
 <__main__.MyClass at 0x111528b70>,
 <__main__.MyClass at 0x111528ba8>,
 <__main__.MyClass at 0x111528be0>,
 <__main__.MyClass at 0x111528c18>,
 <__main__.MyClass at 0x111528c50>,
 <__main__.MyClass at 0x111528c88>,
 <__main__.MyClass at 0x111528cc0>,
 <__main__.MyClass at 0x111528cf8>,
 <__main__.MyClass at 0x111528d30>,
 <__main__.MyClass at 0x111528d68>,
 <__main__.MyClass at 0x111528da0>,
 <__main__.MyClass at 0x111528dd8>,
 <__main__.MyClass at 0x111528e10>,
 <__main__.MyClass at 0x111528e48>,
 <__main__.MyClass at 0x111528e80>,
 <__main__.MyClass at 0x111528eb8>,
 <__main__.MyClass at 0x111528ef0>,
 <__main__.MyClass at 0x111528f28>,
 <__main__.MyClass at 0x111528f60>,
 <__main__.MyClass at 0x111528f98>,
 <__main__.MyClass at 0x111528fd0>,
 <__main__.MyClass at 0x111529048>,
 <__main__.MyClass at 0x111529080>,
 <__main__.MyClass at 0x1115290b8>,
 <__main__.MyClass at 0x1115290f0>,
 <__main__.MyClass at 0x111529128>,
 <__main__.MyClass at 0x111529160>,
 <__main__.MyClass at 0x111529198>,
 <__main__.MyClass at 0x1115291d0>,
 <__main__.MyClass at 0x111529208>,
 <__main__.MyClass at 0x111529240>,
 <__main__.MyClass at 0x111529278>,
 <__main__.MyClass at 0x1115292b0>,
 <__main__.MyClass at 0x1115292e8>,
 <__main__.MyClass at 0x111529320>,
 <__main__.MyClass at 0x111529358>,
 <__main__.MyClass at 0x111529390>,
 <__main__.MyClass at 0x1115293c8>,
 <__main__.MyClass at 0x111529400>,
 <__main__.MyClass at 0x111529438>,
 <__main__.MyClass at 0x111529470>,
 <__main__.MyClass at 0x1115294a8>,
 <__main__.MyClass at 0x1115294e0>,
 <__main__.MyClass at 0x111529518>,
 <__main__.MyClass at 0x111529550>,
 <__main__.MyClass at 0x111529588>,
 <__main__.MyClass at 0x1115295c0>,
 <__main__.MyClass at 0x1115295f8>,
 <__main__.MyClass at 0x111529630>,
 <__main__.MyClass at 0x111529668>,
 <__main__.MyClass at 0x1115296a0>,
 <__main__.MyClass at 0x1115296d8>,
 <__main__.MyClass at 0x111529710>,
 <__main__.MyClass at 0x111529748>,
 <__main__.MyClass at 0x111529780>,
 <__main__.MyClass at 0x1115297b8>,
 <__main__.MyClass at 0x1115297f0>,
 <__main__.MyClass at 0x111529828>,
 <__main__.MyClass at 0x111529860>,
 <__main__.MyClass at 0x111529898>,
 <__main__.MyClass at 0x1115298d0>,
 <__main__.MyClass at 0x111529908>,
 <__main__.MyClass at 0x111529940>,
 <__main__.MyClass at 0x111529978>,
 <__main__.MyClass at 0x1115299b0>,
 <__main__.MyClass at 0x1115299e8>,
 <__main__.MyClass at 0x111529a20>,
 <__main__.MyClass at 0x111529a58>,
 <__main__.MyClass at 0x111529a90>,
 <__main__.MyClass at 0x111529ac8>,
 <__main__.MyClass at 0x111529b00>,
 <__main__.MyClass at 0x111529b38>,
 <__main__.MyClass at 0x111529b70>,
 <__main__.MyClass at 0x111529ba8>,
 <__main__.MyClass at 0x111529be0>,
 <__main__.MyClass at 0x111529c18>,
 <__main__.MyClass at 0x111529c50>,
 <__main__.MyClass at 0x111529c88>,
 <__main__.MyClass at 0x111529cc0>,
 <__main__.MyClass at 0x111529cf8>,
 <__main__.MyClass at 0x111529d30>,
 <__main__.MyClass at 0x111529d68>,
 <__main__.MyClass at 0x111529da0>,
 <__main__.MyClass at 0x111529dd8>,
 <__main__.MyClass at 0x111529e10>,
 <__main__.MyClass at 0x111529e48>,
 <__main__.MyClass at 0x111529e80>,
 <__main__.MyClass at 0x111529eb8>,
 <__main__.MyClass at 0x111529ef0>,
 <__main__.MyClass at 0x111529f28>,
 <__main__.MyClass at 0x111529f60>,
 <__main__.MyClass at 0x111529f98>,
 <__main__.MyClass at 0x111529fd0>,
 <__main__.MyClass at 0x11152a048>,
 <__main__.MyClass at 0x11152a080>,
 <__main__.MyClass at 0x11152a0b8>,
 <__main__.MyClass at 0x11152a0f0>,
 <__main__.MyClass at 0x11152a128>,
 <__main__.MyClass at 0x11152a160>,
 <__main__.MyClass at 0x11152a198>,
 <__main__.MyClass at 0x11152a1d0>,
 <__main__.MyClass at 0x11152a208>,
 <__main__.MyClass at 0x11152a240>,
 <__main__.MyClass at 0x11152a278>,
 <__main__.MyClass at 0x11152a2b0>,
 <__main__.MyClass at 0x11152a2e8>,
 <__main__.MyClass at 0x11152a320>,
 <__main__.MyClass at 0x11152a358>,
 <__main__.MyClass at 0x11152a390>,
 <__main__.MyClass at 0x11152a3c8>,
 <__main__.MyClass at 0x11152a400>,
 <__main__.MyClass at 0x11152a438>,
 <__main__.MyClass at 0x11152a470>,
 <__main__.MyClass at 0x11152a4a8>,
 <__main__.MyClass at 0x11152a4e0>,
 <__main__.MyClass at 0x11152a518>,
 <__main__.MyClass at 0x11152a550>,
 <__main__.MyClass at 0x11152a588>,
 <__main__.MyClass at 0x11152a5c0>,
 <__main__.MyClass at 0x11152a5f8>,
 <__main__.MyClass at 0x11152a630>,
 <__main__.MyClass at 0x11152a668>,
 <__main__.MyClass at 0x11152a6a0>,
 <__main__.MyClass at 0x11152a6d8>,
 <__main__.MyClass at 0x11152a710>,
 <__main__.MyClass at 0x11152a748>,
 <__main__.MyClass at 0x11152a780>,
 <__main__.MyClass at 0x11152a7b8>,
 <__main__.MyClass at 0x11152a7f0>,
 <__main__.MyClass at 0x11152a828>,
 <__main__.MyClass at 0x11152a860>,
 <__main__.MyClass at 0x11152a898>,
 <__main__.MyClass at 0x11152a8d0>,
 <__main__.MyClass at 0x11152a908>,
 <__main__.MyClass at 0x11152a940>,
 <__main__.MyClass at 0x11152a978>,
 <__main__.MyClass at 0x11152a9b0>,
 <__main__.MyClass at 0x11152a9e8>,
 <__main__.MyClass at 0x11152aa20>,
 <__main__.MyClass at 0x11152aa58>,
 <__main__.MyClass at 0x11152aa90>,
 <__main__.MyClass at 0x11152aac8>,
 <__main__.MyClass at 0x11152ab00>,
 <__main__.MyClass at 0x11152ab38>,
 <__main__.MyClass at 0x11152ab70>,
 <__main__.MyClass at 0x11152aba8>,
 <__main__.MyClass at 0x11152abe0>,
 <__main__.MyClass at 0x11152ac18>,
 <__main__.MyClass at 0x11152ac50>,
 <__main__.MyClass at 0x11152ac88>,
 <__main__.MyClass at 0x11152acc0>,
 <__main__.MyClass at 0x11152acf8>,
 <__main__.MyClass at 0x11152ad30>,
 <__main__.MyClass at 0x11152ad68>,
 <__main__.MyClass at 0x11152ada0>,
 <__main__.MyClass at 0x11152add8>]
In [9]:
MyClass.i
Out[9]:
12345
In [10]:
m.i
Out[10]:
12345
In [11]:
l.i
Out[11]:
12345
In [12]:
m.f()
Out[12]:
'hello world'
In [13]:
MyClass.f()
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-13-320d7344e9c3> in <module>()
----> 1 MyClass.f()

TypeError: f() missing 1 required positional argument: 'self'
In [19]:
class MyClass:
    # Initializer
    def __init__(self):
        # self.data is a new attribute of any instance of MyClass, assigning
        # an empty list
        self.data = []
        
    def get_data(self):
        return self.data
    
    def set_data(self, pos, val):
        try:
            self.data[pos] = val
        except IndexError:
            self.data.append(val)
In [21]:
m = MyClass()
In [22]:
m.get_data()
Out[22]:
[]
In [23]:
m.set_data(0, "hello")
In [24]:
m.get_data()
Out[24]:
['hello']
In [25]:
m.set_data(1, "world")
In [26]:
m.get_data()
Out[26]:
['hello', 'world']
In [27]:
m.set_data(0, "foo")
In [28]:
m.get_data()
Out[28]:
['foo', 'world']
In [29]:
m.data
Out[29]:
['foo', 'world']
In [30]:
m2 = MyClass()
In [31]:
print(id(m.data), id(m2.data))
4585305672 4585520648
In [32]:
m.data
Out[32]:
['foo', 'world']
In [33]:
m2.data
Out[33]:
[]

Complex Number Example Class

In [34]:
class Complex:
    def __init__(self, realpart, imagpart):
        # realpart, and imagpart are local variables!
        # Their values go away when __init__ finishes executing
        
        self.r = realpart
        self.i = imagpart
In [35]:
x = Complex(3.0, -4.5)
In [36]:
x.r
Out[36]:
3.0
In [37]:
x.i
Out[37]:
-4.5

Differences between 'functions' and 'methods'

In [38]:
Complex.__init__
Out[38]:
<function __main__.Complex.__init__>
In [39]:
x.__init__
Out[39]:
<bound method Complex.__init__ of <__main__.Complex object at 0x1115c7320>>

Instance vs Class Variables

In [2]:
class Dog:
    # Class variable
    # Sharing data between all instances of this class
    kind = 'canine'
    
    def __init__(self, name, breed):
        # Two instance variable
        self.name = name
        self.breed = breed
        
    def desc(self):
        print("My dog {0} is of the breed {1}".format(self.name, self.breed))
In [3]:
buck = Dog("Buck", "Walker Hound")
In [4]:
ellie = Dog("Ellie", "Beagle")
In [5]:
buck.name
Out[5]:
'Buck'
In [6]:
buck.breed
Out[6]:
'Walker Hound'
In [7]:
ellie.name
Out[7]:
'Ellie'
In [8]:
ellie.breed
Out[8]:
'Beagle'
In [9]:
buck.desc()
My dog Buck is of the breed Walker Hound
In [10]:
ellie.desc()
My dog Ellie is of the breed Beagle
In [11]:
ellie.kind
Out[11]:
'canine'
In [12]:
buck.kind
Out[12]:
'canine'
In [13]:
buck.kind = "bad wolf"
In [14]:
buck.kind
Out[14]:
'bad wolf'
In [15]:
ellie.kind
Out[15]:
'canine'
In [24]:
class Dog2:
    # Class variable
    # Sharing data between all instances of this class
    # Immutable object
    kind = 'canine'
    
    # vs. a mutable object
    data = []
    
    def __init__(self, name, breed):
        # Two instance variable
        self.name = name
        self.breed = breed
        
    def desc(self):
        print("My dog {0} is of the breed {1}".format(self.name, self.breed))
In [33]:
buck = Dog2("Buck", "Walker Hound")
ellie = Dog2("Ellie", "Beagle")
In [34]:
id(buck.data)
Out[34]:
4427977736
In [35]:
id(ellie.data)
Out[35]:
4427977736
In [36]:
buck.data.append(10)
In [37]:
buck.data
Out[37]:
[10]
In [39]:
ellie.data
Out[39]:
[10]
In [ ]: