Ok, I know there has to be a way to do this, but my google-fu fails me (once more). I have a class with instance variables (or should they be called attributes, I'm newish to programming and get really confused with OO sometimes), like the one in this example:
class Foo(): self.a = "bar" self.z = "test" self.var = 2 foo = Foo() I want to print a list of the variables (strings, integers, etc) in Foo, without knowing their names. So that the user who needs to change a peice of information can view the variable list, enter the name of the variable they need to change and then make the change. This is what I'd like a sample run to look like: Attributes for foo: a = bar z = test var = 2 Change: a New value: foobar Change made! I can handle the formatting and changing the variable itself, no problem, but how do I get a list of all the variables in a class instance? I almost put a list in there called vars and appended all the variables to it so I could iterate the list, but this sounds like something useful enough that someone has come up with a better way to do it than that. It almost looks like self.__dir__() is what I want, but that returns methods as well, correct? I only want variables, but I can't think of how to do a list comprehension that would remove the methods. JonathanB -- http://mail.python.org/mailman/listinfo/python-list