J'écris un code et je dois comparer deux dates qui proviennent de sources différentes (API et DB) mais j'ai un problème:Comment puis-je éliminer le 0 supplémentaire de la microseconde dans python datetime.datetime?
c'est ce que l'API et DB me redonnent:
import datetime
a = datetime.datetime(2016, 8, 5, 3, 0, 23, 30000)
b ='2016-08-05T03:00:23.3'
si je compare a == b Faux Je reçois donc je suis en train de formater la première valeur de cette façon:
a.strftime("%Y-%m-%dT%H:%M:%S.%f")
le problème est que dans le résultat que j'ai beaucoup de 0 supplémentaire:
'2016-08-05T03:00:23.30000'
dans ce cas aussi, si je compare a == b je reçois False.
Existe-t-il un moyen d'ignorer tous les 0 à la fin de la microseconde?
cela ne fonctionne pas, si j'utilise .rstrip (« 0 ») ma chaîne devient: « 2016-08-05T03: 00: 23.03 » qui a un 0 devant 3 dans la microseconde si le code trouve toujours la différence entre '2016-08-05T03: 00: 23.03' et '2016-08-05T03: 00: 23.3' –
peut-être avez-vous manqué un 0 supplémentaire dans 'a'? 'a = datetime.datetime (2016, 8, 5, 3, 0, 23, 300000)' parce que la dernière partie est en microsecondes et 'a' sera par conséquent 2016-08-05T03: 00: 23.030000 et ne sera en effet pas être égal à 'b'. –