generally, I name the members in the Class definition and set them to None there...
class Car: speed = None brand = None def __init__(): self.speed = defaultspeed #alternately, and more commonly, get this speed as a initializer argument self.brand = defaultbrand That solves the issue of being able to "see" all the members of an object by reading code... however, this all goes out the window when composing an instance dynamically (i.e. metaclass type stuff). -- http://mail.python.org/mailman/listinfo/python-list