Je ne peux pas trouver une réponse définitive à cette. Autant que je sache, vous ne pouvez pas avoir plusieurs __init__
fonctions dans une classe Python. Donc, ce est une bonne façon de résoudre ce problème?
Supposons que j'ai une classe appelée Cheese
avec l' number_of_holes
de la propriété. Comment puis-je avoir deux manières de créer fromage-objets...
- celui qui prend un certain nombre de trous comme ceci:
parmesan = Cheese(num_holes = 15)
- et celui qui ne prend pas d'arguments et juste rend aléatoire l'
number_of_holes
bien:gouda = Cheese()
Je peux penser qu'à une seule façon de le faire, mais qui semble un peu maladroit:
class Cheese():
def __init__(self, num_holes = 0):
if (num_holes == 0):
# randomize number_of_holes
else:
number_of_holes = num_holes
Qu'en dites-vous? Est-il un meilleur moyen?