Je travaille sur l'exercice d'horloge exorcism.io et je n'arrive pas à comprendre pourquoi ce test échoue. Les résultats semblent identiques et ont même le même type.Chaîne ou objet compairson en Python 3.52
Voici mon code:
class Clock:
def __init__(self, h, m):
self.h = h
self.m = m
self.adl = 0
def make_time(self):
s = self.h * 3600
s += self.m * 60
if self.adl: s += self.adl
while s > 86400:
s -= 86400
if s == 0:
return '00:00'
h = s // 3600
if h:
s -= h * 3600
m = s // 60
return '{:02d}:{:02d}'.format(h, m)
def add(self, more):
self.adl = more * 60
return self.make_time()
def __str__(self):
return str(self.make_time()) # i don't think I need to do this
if __name__ == '__main__':
cl1 = Clock(34, 37) #10:37
cl2 = Clock(10, 37) #10:37
print(type(cl2))
print(cl2, cl1)
print(cl2 == cl1) #false
Vous n'avez pas défini de comparaison d'égalité pour ces objets, ils héritent donc de l'identité par défaut '==' de 'object'. – user2357112
@ user2357112 C'était tout. Merci! Également nécessaire pour mettre la nouvelle heure et minute dans le dictionnaire personnel. – Eman
S'il vous plaît ne pas ajouter une solution à votre question. Vous êtes invités à ajouter votre propre réponse ci-dessous à la place. Rappelez-vous que les posts de Stack Overflow sont destinés à être utiles aux futurs visiteurs ayant le même problème, et que les réponses sont votées indépendamment. –