Hi Python Purists!
I want all instances of a given class to share a piece of information,
but I want to set that information on the fly. I have found that this
works:
class Foo(object):
# class_variable = None # There is no real need to declare this
def __init__(self):
print self.__class__.class_variable
def main():
Foo.class_variable = "Done"
Foo()
if __name__ == '__main__': main()
Running the script prints out "Done" as expected.
However, this looks ugly to me. Is there a more elegant way of doing
this?
To give you the context: my application allows you to select a skin for
the user interface. I want to set the access path to the skin folder as
a class variable, so that all instances of that class use images from
the appropriate folder. The access path will be read in from a
preferences file before any instances of the class are created.
Thanks in advance for your advice.
James
_______________________________________________
Tutor maillist - [email protected]
http://mail.python.org/mailman/listinfo/tutor