Ma question est comment utiliser les attributs de données dans une méthode, mais permettez-leur d'être surchargé individuellement lors de l'appel de la méthode. Cet exemple montre comment j'ai essayé de le faire:Python: comment remplacer les attributs de données dans les appels de méthode?
class Class:
def __init__(self):
self.red = 1
self.blue = 2
self.yellow = 3
def calculate(self, red=self.red, blue=self.blue, yellow=self.yellow):
return red + blue + yellow
C = Class
print C.calculate()
print C.calculate(red=4)
-t-il est logique ce que je suis en train d'accomplir? Lorsque la fonction calculate est appelée, je veux utiliser les attributs de données pour le rouge, le bleu et le jaune par défaut. Mais si l'appel de méthode spécifie explicitement un paramètre différent (rouge = 4), je veux qu'il utilise cette valeur spécifiée à la place. Quand je lance ceci, ça donne une erreur pour utiliser 'self'. dans le champ des paramètres (en disant que ce n'est pas défini). Y a-t-il un moyen de faire ce travail? Merci.
Comme vous l'avez dit, pas aussi concis que l'on voudrait - mais certainement réparable. Merci beaucoup! – Elliott
Ensuite, appuyez sur la coche verte;) – Thomas