Если весь ваш класс «рассчитан», то могу я предложить type
вызываемый. Это особенно полезно, если ваш оригинальный контейнер был диктом:
d = dict(('member-%d' % k, k*100) for k in range(10))
C = type('C', (), d)
Это даст вам те же результаты, что и
class C(object):
member-0 = 0
member-1 = 100
...
Если ваши потребности действительно сложны, рассмотрите метаклассы. (На самом деле type
- это метакласс =)