Hi, Background: In my code I use sqlalchemy to read SQL server data. I want to write that data to HDF5 using pytables (see 'declaring a column descriptor': https://www.pytables.org/usersguide/tutorials.html). My question is not about pytables or sqlalchemy per se, but I thought it would be informative to mention this.
What is the best way to dynamically set class variables? I am looking for a generalization of something like this: class Parent: pass class Child(Parent): col1 = 'str' col2 = 'int' Several (im)possible solutions: # ------- class Parent: pass class_vars = dict(col1='str', col2='int') # approach 1 Child = type('Child', (Parent,), class_vars) # approach 2 class Child(Parent): pass Child.__dict__.update( class_vars ) # AttributeError: 'mappingproxy' object has no attribute 'update' # approach 3 class Child(Parent): pass for k, v in class_vars.items(): setattr(Child, k, v) I initially chose approach #1, but I find this way of defining a class quite cryptic (but then, it's part of the language definition!). What's the best way to do this? I am using Python 3.5 (Windows). Thanks in advance! Best wishes, Albert-Jan _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor