basically, you can create new types on the fly using type() with three arguments:
my_class = type("className",(BaseClass,),class_dict) then, you can assign this vlass to the golbal namespace using globals(): globals()["className"] = my_class In your case, you would need to populate the class_dict by a function object that you parameterize to your needs, e.g. def create_class(name,params) : def cls_init(self) : BaseClass.__init__(self) self.params = params cls_dict = { "__init__" : cls_init } new_cls = type(name,(BaseClass,),cls_dict) globals()[name] = new_cls the result would be like this: >>> create_class("test_class",42) >>> instance = test_class() >>> print instance.params 42 -- http://mail.python.org/mailman/listinfo/python-list