1. 程式人生 > >python求一個時間點的前一個月和後一個月

python求一個時間點的前一個月和後一個月

python如何獲取一個時間點的前一個月和後一個月,網上雖然有很多教程,但是本人感覺太雜了而且不太好用,研究一番之後決定提供一種方法和思路。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import datetime
import calendar

time = datetime.date(2017, 7, 20) #年,月,日

#求該月第一天
first_day = datetime.date(time.year, time.month, 1)
print u'該月第一天:' + str(first_day)

#求前一個月的第一天
#前一個月最後一天
pre_month = first_day - datetime.timedelta(days = 1) #timedelta是一個不錯的函式 print u'前一個月最後一天:' + str(pre_month) #前一個月的第一天 first_day_of_pre_month = datetime.date(pre_month.year, pre_month.month, 1) print u'前一個月的第一天:' + str(first_day_of_pre_month) #求後一個月的第一天 days_num = calendar.monthrange(first_day.year, first_day.month)[1
] #獲取一個月有多少天 first_day_of_next_month = first_day + datetime.timedelta(days = days_num) #當月的最後一天只需要days_num-1即可 print u'後一個月的第一天:' + str(first_day_of_next_month)

執行結果如下
這裡寫圖片描述