假设我有一套职业装和四个职业装:心脏,铁锹,钻石,棍棒。
class Suit:
...
class Heart(Suit):
...
class Spade(Suit):
...
class Diamond(Suit):
...
class Club(Suit):
...
我有一个方法接收一个suit作为参数,它是一个类对象,而不是一个实例。更准确地说,它可能只接受四个值中的一个:心、铲子、钻石、棍子。我怎样才能做出一个断言来保证这样的事情?类似于:
def my_method(suit):
assert(suit subclass of Suit)
...
我在用Python 3。
你可以像这样使用
issubclass()
。^{}
节选:
如果有实例,则可以使用
isinstance
;如果有类,则可以使用issubclass
。通常认为这是个坏主意。通常在Python中,通过尝试对某个对象执行某个操作来判断该对象是否能够执行某个操作。相关问题 更多 >
编程相关推荐