Допустим, у меня есть класс Suit и четыре подкласса масти: Heart, Spade, Diamond, Club.
class Suit:
...
class Heart(Suit):
...
class Spade(Suit):
...
class Diamond(Suit):
...
class Club(Suit):
...
У меня есть метод, который принимает масть в качестве параметра, который является объектом класса, не экземпляр. Точнее, он может получить только одно из четырех значений: Heart, Spade, Diamond, Club. Как я могу сделать утверждение, которое гарантирует это? Примерно так:
def my_method(suit):
assert(suit subclass of Suit)
...
Я использую Python 3.