class Bar:
	def __init__(self, foo_):
		self.foo_dict = {}
		self.foo = foo_
		
	@property
	def foo(self):
		return self.foo_dict["foo_key"]
		
	@foo.setter
	def foo(self, value):
		self.foo_dict["foo_key"] = value
		
	def show(self):
		print("foo={} ; foo_dict['foo_key']={}".format(
						self.foo, self.foo_dict["foo_key"]))
		
b = Bar(1)
b.show()
b.foo = 2
b.show()
b.foo_dict["foo_key"] = 3
b.show()