python instance attributes don’t overwrite class attributes

>>> class Test(object):
… cache = {}
… def yup(self):
… self.cache = {}

>>> t = Test()
>>> t.cache[3] = 2
>>> t.cache
{3: 2}
>>> Test.cache
{3: 2}
>>> t.yup()
>>> t.cache
{}
>>> Test.cache
{3: 2}

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s