Pythonで複数のコンストラクタを実装するには、クラスメソッドを使う方法が推奨されています。例えば、Cheeseクラスでは、randomslightly_holeyといったメソッドで異なる初期化方法を提供できます。

class Cheese:
    def __init__(self, num_holes=0):
        self.number_of_holes = num_holes
    @classmethod
    def random(cls):
        return cls(randint(0, 100))
    @classmethod
    def slightly_holey(cls):
        return cls(randint(0, 33))

これにより、複数のコンストラクタのように異なる方法でオブジェクトを生成できます。