Connaitre si c'est heure d'été ou d'hiver
Résolu/FerméWhismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 - 26 mars 2023 à 12:17
- Connaitre si c'est heure d'été ou d'hiver
- Votre iphone a ete pirate ✓ - Forum iPhone
- Aucune application permettant d'ouvrir ce lien n'a été trouvée - Forum Mobile
- Le fichier à télécharger correspond au contenu brut d’un courrier électronique. de quel pays a été envoyé ce message ? - Forum Mail
- Cette photo n’a pas été prise cette année. trouvez la date, l'heure et avec quel modèle d'appareil photo elle a été prise. - Forum Samsung
- Comment savoir si on a été bloqué sur messenger - Guide
6 réponses
25 mars 2023 à 18:41
Bonjour,
Je t'invite à regarder les solutions proposées ici :
https://discourse.julialang.org/t/how-to-check-if-date-is-summer-time/75950
Dis-nous si l'une a ta préférence.
Ritchi
25 mars 2023 à 19:11
celle de rafael.guerra me semble bien
mais ce n'est pas du python
il faudrait trouver un équivalent de la fonction tolast()
25 mars 2023 à 19:19
j'ai trouvé ça
>>> import datetime >>> import pytz.reference >>> local_tnz = pytz.reference.LocalTimezone() >>> local_tnz.utcoffset(datetime.datetime(2023, 3, 25, 11, 12, 30)) datetime.timedelta(seconds=3600) >>> local_tnz.utcoffset(datetime.datetime(2023, 3, 26, 11, 12, 30)) datetime.timedelta(seconds=7200)
est-ce que LocalTimezone() prend en compte Europe/Paris ?
25 mars 2023 à 21:30
voici la fonction qui a l'air de fonctionner, malgré l'absence d'indication du lieu "Europe/Paris"
from datetime import datetime import pytz.reference def calc_heure_ete_hiver(annee, mois, jour, heure, minute, seconde): heure_input=datetime(annee, mois, jour, heure, minute, seconde) local_tnz = pytz.reference.LocalTimezone() decal_heure_ete_hiver_gmt = local_tnz.utcoffset(heure_input) decal_heure_ete_hiver_gmt = -int(decal_heure_ete_hiver_gmt.seconds/3600) return decal_heure_ete_hiver_gmt
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question26 mars 2023 à 11:02
Bonjour
ce code te retourne l'écart entre l'heure Greenwich Mean Time (l'heure moyenne sur le.méridien de Greenwich) et l'heure locale de ton ordinateur. C'est donc la config de ton ordi qui est prise en compte, c'est pour ça que tu ne spécifie pas le fuseau.
En France, avec un ordinateur configuré à l'heure légale, c'est 1 heure en hiver et 2 heures en été.
Du coup, tant que tu es sûr que ton ordinateur est bien configuré et en France, tu peux te servir de cet écart.
Mais si tu dois utiliser ce code à l'étranger ou dans le milieu scientifique (où en général, on date en UTC {temps universel coordonné}), ça ne fonctionnera pas.
26 mars 2023 à 11:24
Bonjour Whismeril,
merci beaucoup pour votre réponse, effectivement ça me convient car ça tourne en local
mais je vais chercher comment choisir le fuseau horaire à la place de "pytz.reference.LocalTimezone()"
26 mars 2023 à 12:17
Tu peux regarder ceci https://www.programiz.com/python-programming/datetime/current-datetime