# -*- coding: UTF-8 -*-
import datetime
import calendar
# 今日日期
today = datetime.datetime.strftime(datetime.datetime.now(), "%Y-%m-%d")
# 前30天的日期
last_30_day2 = datetime.datetime.today() - datetime.timedelta(days=29)
# 转换为字符串
last_30_day = datetime.datetime.strftime(last_30_day2, "%Y-%m-%d")
# 前7天的日期
last_7_day2 = datetime.datetime.today() - datetime.timedelta(days=6)
# 转换为字符串
last_7_day = datetime.datetime.strftime(last_7_day2, "%Y-%m-%d")
# 未来第5天的日期
dating5 = datetime.datetime.today() + datetime.timedelta(days=5)
# 转换为字符串
date5 = datetime.datetime.strftime(dating5, "%Y-%m-%d")
# 未来第6天的日期
dating6 = datetime.datetime.today() + datetime.timedelta(days=6)
# 转换为字符串
date6 = datetime.datetime.strftime(dating6, "%Y-%m-%d")
# 明天的日期
tomorrow2 = datetime.datetime.today() + datetime.timedelta(days=1)
# 转换为字符串
tomorrow = datetime.datetime.strftime(tomorrow2, "%Y-%m-%d")
# 半年
last_180_day2 = datetime.datetime.today() - datetime.timedelta(days=179)
last_180_day = datetime.datetime.strftime(last_180_day2, "%Y-%m-%d")
# 上周周一和周日的日期
now = datetime.datetime.now()
last_week_start2 = now - datetime.timedelta(days=now.weekday() + 7)
# 换为字符
last_week_start = datetime.datetime.strftime(last_week_start2, "%Y-%m-%d")
last_week_end2 = now - datetime.timedelta(days=now.weekday() + 1)
last_week_end = datetime.datetime.strftime(last_week_end2, "%Y-%m-%d")
# 获取现在的时间
# 获取本周周一和周日的时间
def get_current_week():
monday, sunday = datetime.date.today(), datetime.date.today()
one_day = datetime.timedelta(days=1)
while monday.weekday() != 0:
monday -= one_day
while sunday.weekday() != 6:
sunday += one_day
monday2 = datetime.datetime.strftime(monday, "%Y-%m-%d")
sunday2 = datetime.datetime.strftime(sunday, "%Y-%m-%d")
return monday2, sunday2
# 获取下个月第一天时间,每月充值活动用
year = datetime.datetime.today().year
month = datetime.datetime.today().month
if month == 12:
month = 1
year += 1
else:
month += 1
next_month = datetime.datetime(year, month, 1)
# 获取今天的时间
now = datetime.datetime.now()
# 获取本月最后一天时间
this_month_end = datetime.datetime(now.year, now.month, calendar.monthrange(now.year, now.month)[1])
# 判断今天与本月最后一天相隔时间
if (this_month_end - now).days >= 7:
# 第1天日期(用于每月充值活动)
next_1_day = datetime.datetime.strftime(now, "%Y-%m-%d")
# 第2天日期
next_2_day = datetime.datetime.strftime((now + datetime.timedelta(days=1)), "%Y-%m-%d")
# 第3天日期
next_3_day = datetime.datetime.strftime((now + datetime.timedelta(days=2)), "%Y-%m-%d")
# 第4天日期
next_4_day = datetime.datetime.strftime((now + datetime.timedelta(days=3)), "%Y-%m-%d")
# 第5天日期
next_5_day = datetime.datetime.strftime((now + datetime.timedelta(days=4)), "%Y-%m-%d")
# 第6天日期
next_6_day = datetime.datetime.strftime((now + datetime.timedelta(days=5)), "%Y-%m-%d")
# 第7天日期
next_7_day = datetime.datetime.strftime((now + datetime.timedelta(days=6)), "%Y-%m-%d")
# 第8天日期
next_8_day = datetime.datetime.strftime((now + datetime.timedelta(days=7)), "%Y-%m-%d")
else:
# 第8天日期(用于每月充值活动)
next_8_day = datetime.datetime.strftime(now, "%Y-%m-%d")
# 第7天日期
next_7_day = datetime.datetime.strftime((now - datetime.timedelta(days=1)), "%Y-%m-%d")
# 第6天日期
next_6_day = datetime.datetime.strftime((now - datetime.timedelta(days=2)), "%Y-%m-%d")
# 第5天日期
next_5_day = datetime.datetime.strftime((now - datetime.timedelta(days=3)), "%Y-%m-%d")
# 第4天日期
next_4_day = datetime.datetime.strftime((now - datetime.timedelta(days=4)), "%Y-%m-%d")
# 第3天日期
next_3_day = datetime.datetime.strftime((now - datetime.timedelta(days=5)), "%Y-%m-%d")
# 第2天日期
next_2_day = datetime.datetime.strftime((now - datetime.timedelta(days=6)), "%Y-%m-%d")
# 第1天日期
next_1_day = datetime.datetime.strftime((now - datetime.timedelta(days=7)), "%Y-%m-%d")
# 今日日期
today = datetime.datetime.strftime(datetime.datetime.now(), "%Y-%m-%d")
# 昨天
yesterday2 = datetime.datetime.today() - datetime.timedelta(days=-1)
# 转换为字符串
yesterday = datetime.datetime.strftime(yesterday2, "%Y-%m-%d")
# 未来30天的日期
last_30_day2 = datetime.datetime.today() - datetime.timedelta(days=30)
# 转换为字符串
last_30_day = datetime.datetime.strftime(last_30_day2, "%Y-%m-%d")
# # 未来一天的时间
# next_1_day2 = datetime.datetime.today() + datetime.timedelta(days=1)
# # 转换为字符串
# next_1_day = datetime.datetime.strftime(next_1_day2, "%Y-%m-%d")
#
# # *********
# next_2_day2 = datetime.datetime.today() + datetime.timedelta(days=2)
# # 转换为字符串
# next_2_day = datetime.datetime.strftime(next_2_day2, "%Y-%m-%d")
#
# # **********
# next_3_day2 = datetime.datetime.today() + datetime.timedelta(days=3)
# # 转换为字符串
# next_3_day = datetime.datetime.strftime(next_3_day2, "%Y-%m-%d")
#
# # *******
# next_4_day2 = datetime.datetime.today() + datetime.timedelta(days=4)
# # 转换为字符串
# next_4_day = datetime.datetime.strftime(next_4_day2, "%Y-%m-%d")
#
# # ********
# next_5_day2 = datetime.datetime.today() + datetime.timedelta(days=5)
# # 转换为字符串
# next_5_day = datetime.datetime.strftime(next_5_day2, "%Y-%m-%d")
#
# # *******
# next_6_day2 = datetime.datetime.today() + datetime.timedelta(days=6)
# # 转换为字符串
# next_6_day = datetime.datetime.strftime(next_6_day2, "%Y-%m-%d")
#
# next_7_day2 = datetime.datetime.today() + datetime.timedelta(days=7)
# # 转换为字符串
# next_7_day = datetime.datetime.strftime(next_7_day2, "%Y-%m-%d")
# 前15天的日期
last_15_day2 = datetime.datetime.today() - datetime.timedelta(days=14)
# 转换为字符串
last_15_day = datetime.datetime.strftime(last_15_day2, "%Y-%m-%d")
# 获取当月第一天的日期
year = datetime.datetime.today().year
month = datetime.datetime.today().month
month_1_day = datetime.datetime(year, month, 1)
month_first_day = datetime.datetime.strftime(month_1_day, "%Y-%m-%d")
def today_start_time():
# 获取当天的零点
now = datetime.datetime.now()
begin_time = now - datetime.timedelta(hours=now.hour, minutes=now.minute, seconds=now.second,
microseconds=now.microsecond)
return begin_time
def before_30_day():
# 前30天的日期
before_30_day2 = datetime.datetime.today() - datetime.timedelta(days=-30)
# 转换为字符串
before_ = datetime.datetime.strftime(before_30_day2, "%Y-%m-%d %H:%M:%S")
return before_
def today_end_time():
# 获取当天的23:59:00
now = datetime.datetime.now()
zeroToday = now - datetime.timedelta(hours=now.hour, minutes=now.minute, seconds=now.second,
microseconds=now.microsecond)
# 获取23:59:59
end_time = zeroToday + datetime.timedelta(hours=23, minutes=59, seconds=59)
return end_time
def current_time():
# 获取当前时间
now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
return now
def yesterday_time():
# 获取当前时间
yesterday0 = (datetime.datetime.now() + datetime.timedelta(days=-1)).strftime('%Y-%m-%d %H:%M:%S')
return yesterday0
def year_half_time():
# 获取当前时间
year_half = (datetime.datetime.now() + datetime.timedelta(days=-180)).strftime('%Y-%m-%d %H:%M:%S')
return year_half
# 今天 近7日 近15日,本月
def get_time_array():
return [['%s' % today, '%s' % today], ['%s' % last_7_day, '%s' % today], ['%s' % last_15_day, '%s' % today],
['%s' % month_first_day, '%s' % today]]
python关于时间,日期的各种表达
最新推荐文章于 2023-08-12 23:00:50 发布