def get_week(date_str=None):
if date_str and isinstance(date_str, str):
now_time = datetime.strptime(date_str + " 00:00:00", "%Y-%m-%d %H:%M:%S")
else:
now_time = datetime.now().replace(hour=0, minute=0, second=0, microsecond=0)
# 當月第一天
one_time = now_time.replace(day=1, hour=0, minute=0, second=0, microsecond=0)
# 當前日期所在周的週一
week_start_time = now_time - timedelta(days=now_time.weekday(), hours=now_time.hour, minutes=now_time.minute,
seconds=now_time.second)
# 當前日期所在周的週日
week_end_time = week_start_time + timedelta(days=6, hours=23, minutes=59, seconds=59)
# 當前日期處於本月第幾周
week_num = int(now_time.strftime('%W')) - int(one_time.strftime('%W')) + 1
# 當前所處月份
month_num = int(now_time.strftime('%m'))
# 當前年份
year_num = int(now_time.strftime('%Y'))