|
@@ -26,12 +26,42 @@ __title__ = '操作时间的工具类'
|
|
|
|
|
|
import datetime
|
|
|
import time
|
|
|
-
|
|
|
+from datetime import timedelta
|
|
|
+from dateutil.relativedelta import relativedelta
|
|
|
|
|
|
# ==========================
|
|
|
# ========== time ==========
|
|
|
# ==========================
|
|
|
|
|
|
+def getDateLists(begin, end):
|
|
|
+ """
|
|
|
+ 返回一个时间列表
|
|
|
+ """
|
|
|
+ interval = getInterval(begin, end)
|
|
|
+ return [getLastDays(begin, -x) for x in range(interval + 1)]
|
|
|
+
|
|
|
+def getInterval(begin, end):
|
|
|
+ t1 = datetime.datetime(int(begin[0:4]), int(begin[5:7]), int(begin[8:10]))
|
|
|
+ t2 = datetime.datetime(int(end[0:4]), int(end[5:7]), int(end[8:10]))
|
|
|
+ return (t2 - t1).days
|
|
|
+
|
|
|
+def getLastDays( begin, interval):
|
|
|
+ """
|
|
|
+ :param begin:
|
|
|
+ :param interval: 正数是之前几天, 负数是之后几天
|
|
|
+ :return:
|
|
|
+ """
|
|
|
+ start =datetime.datetime(int(begin[0:4]), int(begin[5:7]), int(begin[8:10]))
|
|
|
+ delta = timedelta(days=1)
|
|
|
+ if interval < 0:
|
|
|
+ for _ in range(0, -interval):
|
|
|
+ start = start + delta
|
|
|
+ else:
|
|
|
+ for _ in range(0, interval):
|
|
|
+ start = start - delta
|
|
|
+ return start.strftime("%Y-%m-%d")
|
|
|
+
|
|
|
+
|
|
|
def getLastMonthDay():
|
|
|
"""
|
|
|
获取上月第一天和最后一天
|