假设我有一个花色类别和四个花色子类别:红心、黑桃、钻石、梅花。
class Suit: ... class Heart(Suit): ... class Spade(Suit): ... class Diamond(Suit): ... class Club(Suit): ...
我有一个接收西装作为参数的方法,它是一个类对象,而不是一个实例。更准确地说,它可能只收到以下四个值之一:红心、黑桃、钻石、梅花。我怎样才能做出保证这样的事情的断言?就像是:
def my_method(suit): assert(suit subclass of Suit) ...
我正在使用 Python 3。
你可以issubclass()这样使用assert issubclass(suit, Suit)。
issubclass()
assert issubclass(suit, Suit)