extending class static members and inheritance

Fabian PyDEV pydev at hotmail.com
Tue Apr 2 09:27:25 EDT 2013


Hi All,

I have a question.

Let says I have the following two classes:

class Base(object):
	__mylist__ = ["value1", "value2"]

	def somemethod(self):
		pass


class Derived(Base):
	__mylist__ = ["value3", "value4"]

	def anothermethod(self):
		pass
	
	


what I would like to accomplish is that the class Derived has the member __mylist__ extended or merged as ["value1", "value2", "value3", "value4"].

Is there anyway I could accomplish this?

I was thinking on accomplishing this as follows:


class Derived(Base):
	__mylist__ = Base.__mylist__ + ["value3", "value4"]

	def anothermethod(self):
		pass


Is there a better way? Perhaps a decorator?


Thanks in advance and regards,
Fabian




More information about the Python-list mailing list