python获取日期相关方法

# 获取当前时间
now_time = datetime.now()  # 2021-12-08 14:09:55.649546

# 获取前一天时间
yesterday = datetime.now() - timedelta(days=1)  # 2021-12-07 14:11:03.696707

# 只获取日期,不含时间
now_time_data = now_time.date()  # 2021-12-08

# 获取昨天0点0分的时间
now = datetime.now()
zero_yesterday= now - timedelta(days=1, hours=now.hour, minutes=now.minute, seconds=now.second, microseconds=now.microsecond)  # 2021-12-07 00:00:00

# 获取昨天23:59:59
last_yesterday = zero_yesterday + timedelta(hours=23, minutes=59, seconds=59)  # 2021-12-07 23:59:59

# 获取本周一零点和周日的23:59:59点
now = datetime.now()
zero_week = now - timedelta(days=now.weekday(), hours=now.hour, minutes=now.minute, seconds=now.second, microseconds=now.microsecond)  # 2021-12-06 00:00:00
last_week = zero_week + timedelta(days=6, hours=23, minutes=59, seconds=59)  # 2021-12-12 23:59:59

# 获取今年第一天和最后一天
this_year_start = datetime(now.year, 1, 1)  # 2021-01-01 00:00:00
this_year_end = datetime(now.year + 1, 1, 1) - timedelta(days=1, hours=-23, minutes=-59, seconds=-59)  # 2021-12-31 23:59:59

# 获取去年第一天和最后一天
last_year_end = this_year_start - timedelta(days=1, hours=-23, minutes=-59, seconds=-59)  # 2020-12-31 23:59:59
last_year_start = datetime(last_year_end.year, 1, 1)  # 2020-01-01 00:00:00

# 获取今天零点的时间
now = datetime.now()
zero_today = now - timedelta(hours=now.hour, minutes=now.minute, seconds=now.second, microseconds=now.microsecond)  # 2021-12-09 00:00:00

# 获取30天前的零点时间
now = datetime.now()
zero_before_thirty = now - timedelta(days=30, hours=now.hour, minutes=now.minute, seconds=now.second,
microseconds=now.microsecond)  # 2021-11-09 00:00:00

# 获取一年前的今天
now = datetime.now()
zero_before_year = now - timedelta(days=365, hours=now.hour, minutes=now.minute, seconds=now.second,
microseconds=now.microsecond)  # 2020-12-09 00:00:00






猜你喜欢

转载自blog.csdn.net/weixin_47513022/article/details/121789996