首页 > 解决方案 > python动态超类变化

问题描述

我试图通过如下情况来定义超类。

class A:
  pass

class B:
  pass

class Z(object):
  pass

if condition == a:
   z  = Z(A)
elif condition == b:
   z = Z(B)

在python中有可能吗?

标签: pythonclass

解决方案


现在我找到了做到这一点的方法。

class A:
  pass

class B:
  pass

def createZ(sup):
  class Z(sup):
    def __init__(self):
      pass
  return Z

z_a = createZ(A)()
z_b = createZ(B)()

推荐阅读