Je voulais obtenir toutes les dates des x jours d'un certain mois, ou calculer le nombre d'années et de mois après n mois d'un certain mois, alors j'ai cherché. Je ne savais pas, mais il semble que timedelta ne puisse pas calculer le mois.
>>> from datetime import datetime
>>> import calendar
>>> now = datetime.strptime('2014-11-1', '%Y-%m-%d')
datetime.datetime(2014, 11, 1, 0, 0)
>>> #Obtenez une liste des dates du dimanche pour n'importe quel mois
>>> [x[calendar.SUNDAY] for x in calendar.monthcalendar(now.year, now.month)]
[2, 9, 16, 23, 30]
>>> #Pour les jours qui ne sont que quatre fois par mois, la première valeur de la liste sera 0
>>> [x[calendar.MONDAY] for x in calendar.monthcalendar(now.year, now.month)]
[0, 3, 10, 17, 24]
>>> #Calcul du mois(Peut calculer n mois avant et n mois après la date actuelle)
>>> import time
>>> datetime.fromtimestamp(time.mktime((now.year,now.month + 2,1,0,0,0,0,0,0)))
datetime.datetime(2015, 1, 1, 0, 0)
>>> datetime.fromtimestamp(time.mktime((now.year,now.month + 15,1,0,0,0,0,0,0)))
datetime.datetime(2016, 2, 1, 0, 0)
>>> #Il est facile de calculer la date à l'aide de timedelta
>>> from datetime import timedelta
>>> now + timedelta(days=1)
datetime.datetime(2014, 11, 2, 0, 0)
Lien de référence Traitement lié à la date en Python Vous ne pouvez pas ajouter / soustraire des mois? 8.1. Datetime - types de date et d'heure de base
Recommended Posts