Maison  >  Article  >  développement back-end  >  Comment déterminer une date spécifique à partir d'un numéro de semaine en Python ?

Comment déterminer une date spécifique à partir d'un numéro de semaine en Python ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-18 20:42:02445parcourir

How to Determine a Specific Date from a Week Number in Python?

Déterminer une date à partir d'un numéro de semaine

En Python, l'utilisation du module datetime pour extraire une date à partir d'un numéro de semaine nécessite un contexte supplémentaire pour déterminer avec précision le jour spécifique. Le code fourni :

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

affiche "2013-01-01 00:00:00" car le numéro de semaine est insuffisant pour spécifier une date unique. Pour résoudre ce problème, vous devez indiquer un jour spécifique de la semaine au sein de cette semaine.

Code corrigé

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

Dans ce code corrigé, -1 est ajouté au numéro de la semaine, indiquant effectivement le premier jour de cette semaine (lundi), spécifié par -%w. Cela génère "2013-07-01 00:00:00", correspondant au lundi de la 26ème semaine de 2013.

Notes de formatage

Lors de l'utilisation de %W en tant que directive de formatage, lundi est considéré comme le premier jour de la semaine. Si un jour de la semaine différent est souhaité, vous pouvez utiliser une directive alternative.

Date de la semaine ISO

Si le numéro de semaine fourni est au format de date de la semaine ISO , qui commence lundi, vous devez utiliser un ensemble différent de directives de formatage :

d = "2013-W26"
r = datetime.datetime.strptime(d + '-1', "%G-W%V-%u")

Ces directives nécessitent Python 3.6 ou version ultérieure pour des raisons de compatibilité.

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