On Jan 24, 6:22 pm, T H <turian9...@gmail.com> wrote: > I’m new to python, sorry if my question is a bit naive, I was > wondering if it is possible to parse some text (ie. from a text file > or say html) and then dynamically create a class? > > for example lets say the contents of the text file is: > > functionName: bark arg1: numberBarks > functionName: run arg1: howFast arg2: howLong > > and then from the text dynamically create a class like the one below > (including the functions and its implementation) > > class Dog: > def bark(self, numberBarks, myArg): > print(‘numberBarks: ‘ + numberBarks) > print(‘myArg’ + myArg) > return > def run(self, howFast, howLong, myArg): > print(‘howFast: ‘ + howFast) > print(‘howLong’ + howLong) > print(‘myArg’ + myArg) > return > > I know my question is a bit far fetched. Anyhow if it is possible how > is it done? > Thanks so much for any help!
Hi, You could also take a look at the 'type' builtin. It can be used to dynamically create a class. It allows you to specify the class name, the bases and a dictionary containing the attributes. A simple example: >> aClass = type('A', (object, ), { 'a' : 10, 'b' : 'Hello World' }) >> aobj = aClass() >> aobj.__class__.__name__ 'A' >> aobj.a 10 The methods might be a little more difficult to attach to the class, but I don't fully understand your problem. In particular, where does the implementation of your methods come from? Marco -- http://mail.python.org/mailman/listinfo/python-list