Numéro de semaine ISO en Python
Mis à jour : mai 2026
Python gère nativement les semaines ISO dans le module datetime. C'est la méthode la plus fiable pour obtenir l'année ISO, le numéro de semaine et le jour ISO sans réimplémenter l'algorithme.
Tester une date
Résultat visuel pour comparer avec votre code Python
Date vers semaine ISO
from datetime import date
d = date(2026, 5, 29)
iso_year, iso_week, iso_day = d.isocalendar()
print(iso_year) # 2026
print(iso_week) # 22
print(iso_day) # 5, vendrediisocalendar() renvoie trois valeurs : année ISO, semaine ISO et jour ISO. Le jour ISO vaut 1 pour lundi et 7 pour dimanche.
Semaine ISO vers date
Pour convertir une semaine en date, utilisez fromisocalendar. Le troisième argument est le jour ISO.
from datetime import date
monday = date.fromisocalendar(2026, 22, 1)
sunday = date.fromisocalendar(2026, 22, 7)
print(monday) # 2026-05-25
print(sunday) # 2026-05-31Créer une clé 2026-W22
def iso_week_key(d):
y, w, _ = d.isocalendar()
return f"{y}-W{w:02d}"
print(iso_week_key(date(2026, 5, 29)))
# 2026-W22Cette clé est utile pour agréger des ventes, tickets, livraisons ou événements par semaine ISO dans un pipeline Python.