Maison >développement back-end >Tutoriel Python >Comment extraire une date d'un numéro de semaine en Python ?

Comment extraire une date d'un numéro de semaine en Python ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-10 20:52:021021parcourir

How to Extract a Date from a Week Number in Python?

Extraction de la date à partir du numéro de semaine

Lors de la tentative de récupération d'une date à partir d'un numéro de semaine à l'aide du code suivant :

import datetime
d = "2013-W26"
r = datetime.datetime.strptime(d, "%Y-W%W")
print(r)

une erreur se produit car un numéro de semaine seul est insuffisant pour générer une date précise. Pour résoudre ce problème, un jour spécifique de la semaine doit également être spécifié.

Modifiez le code en ajoutant un jour de la semaine par défaut, tel que lundi, à la chaîne :

import datetime
d = "2013-W26"
r = datetime.datetime.strptime(d + '-1', "%Y-W%W-%w")
print(r)

Les modèles -1 et -%w dans la chaîne de format demandent à l'analyseur de sélectionner le lundi de la semaine spécifiée. Ce code mis à jour affiche désormais correctement :

2013-07-01 00:00:00

Il est important de noter que la directive %W suppose que lundi est le premier jour de la semaine conformément au comportement strftime() et strptime() décrit dans le documentation. Tout écart par rapport à cette hypothèse peut conduire à des résultats inattendus.

Pour les cas où le numéro de semaine est une date de semaine ISO, le format %G-W%V-%u doit être utilisé à la place. Cependant, cela nécessite Python version 3.6 ou ultérieure.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn