- Formations
- conversion_path Parcours & Formations
- science Projets
- data_object Exercices de code
- psychology Exercices IA
- quiz Quiz
- Articles
- rss_feed Blog
- sort_by_alpha Glossaire
- menu_book Guides
- help_center FAQ
- media_link Ressources
- Communauté
- groups La communauté
- forum Questions
- live_tv Mentorats
- science Projets mensuels
- Formations
- conversion_path Parcours & Formations
- science Projets
- data_object Exercices de code
- psychology Exercices IA
- quiz Quiz
- Articles
- rss_feed Blog
- sort_by_alpha Glossaire
- menu_book Guides
- help_center FAQ
- media_link Ressources
- Communauté
- groups La communauté
- forum Questions
- live_tv Mentorats
- science Projets mensuels
Inscris-toi
(c'est gratuit !)
Un compte est nécessaire pour participer aux discussions.
Créer un compte person00:00:00 :Pour réaliser des opérations sur des objets de type date, on peut utiliser ce qu'on appelle un delta,et notamment avec la classe TimeDelta qui va nous permettre de modifier une date pour par exemplelui ajouter un certain nombre de jours.
00:00:13 :Donc TimeDelta se trouve dans le module DateTime également, donc je peux l'importer comme ceci,et on va pouvoir créer un delta tout simplement en spécifiant ici par exemple un delta de 20 jours.
00:00:24 :Donc un delta c'est vraiment une durée dans le temps, ce n'est pas une date précise, c'est vraiment une durée.On va dire qu'on a un delta de 20 jours.
00:00:31 :Vous remarquez du coup que le nombre de paramètres ici a un S,donc là par rapport à ce qu'on avait avec les dates avec DateTime, Date et Time,où on avait des noms d'attributs qui étaient au singulier,là comme on a une durée vraiment et non pas un moment précis dans le temps,
00:00:45 :on va avoir un paramètre qui est au pluriel.Donc là je peux créer comme ça une durée de 20 jours dans le temps,et ça va nous permettre après d'ajouter, de soustraire des heures, des jours, des secondes,quoi que ce soit, même des microsecondes à une date.
00:00:57 :Donc on va voir tout ça et on va faire quelques opérations sur des objets de type DateTime.Donc je vais récupérer la date et l'heure d'aujourd'hui avec DateTime.Now,
00:01:05 :et imaginons maintenant que je souhaite récupérer la date dans 15 jours et enlever par exemple 5 heures.Donc on peut très bien si on souhaite ajouter des jours et soustraire des heures,on peut faire donc des opérations négatives ou positives.
00:01:18 :Donc je vais faire une autre variable que je vais appeler NowIn15Days-5Hours,donc dans 15 jours et je vais soustraire 5 heures.Et on va faire Now+, et on va se faire un TimeDelta avec Days égale 15,donc là on n'a pas besoin de mettre le plus, par défaut ça va être positif.
00:01:34 :Par contre si on souhaite soustraire 5 heures, on peut mettre "-5", pour enlever 5 heures à cette date.Donc je valide et si je fais maintenant un print de Now et un print de NowIn15,donc je vais le copier parce que c'est un petit peu long, je vais faire donc un print de cette deuxième variable.
00:01:50 :Là vous voyez que Now, on est bien donc le 24 octobre à 19h11,et le NowIn15Days-5Hours, on est bien donc 15 jours plus tard,donc 24 plus 15 on est le 8, et on a enlevé 5 heures, il était 19h et maintenant il n'est plus que 14h.
00:02:06 :Donc dans ce cas-ci vous voyez que logiquement on passe au mois suivant,on n'a pas rajouté tout bêtement 15 à 24,Python est suffisamment intelligent pour comprendre qu'il doit passer au mois d'après,et donc là on est bien passé au mois de novembre.
00:02:19 :Ça marche également avec les années bisextiles,donc par exemple le mois de février, si je fais une date comme celle-ci le 27 février 2022,et que je lui ajoute un delta de 3 jours,donc je vais faire un print de cette date à laquelle je vais ajouter un time delta de 3 jours,
00:02:35 :là encore logiquement vous allez voir qu'on va passer au mois d'après,et on ne va pas tomber sur le 30 février puisque le 30 février n'existe pas.
00:02:42 :Donc là encore l'ordinateur est suffisamment intelligent pour savoir que le 30 février n'existe pas,et pour nous faire passer directement au 2 mars.Donc voilà comment on peut faire pour ajouter des jours ou soustraire des heures à une date,vous avez remarqué que pour l'instant on utilisait le paramètre days,
00:02:58 :c'est une des limitations de time delta, on ne peut pas mettre par exemple des mois directement,donc si on voulait ajouter 2 mois il faudrait passer par les jours et ajouter par exemple 60 jours.
00:03:08 :Là encore on va pouvoir utiliser une autre bibliothèque qui est la bibliothèque DateUtil qu'on avait vue précédemment,et utiliser RelativeDelta qui va nous permettre lui d'ajouter directement des mois.
00:03:19 :Donc si par exemple je refais DateTime.Now pour récupérer la date et l'heure d'aujourd'hui,je peux faire NowInTwoMonths par exemple,et directement avec le RelativeDelta ajouter cette fois-ci des mois.
00:03:32 :Donc ça c'est un paramètre que l'on n'a pas avec le time delta,on a juste les jours et avec RelativeDelta je peux directement ajouter 2 mois.
Ce n'est pas fini...
✋
Tu as complété % du parcours 🔥
Termine l'intégralité de la formation pour pouvoir débloquer ton attestation de réussite.