求上个月的考核区间
有这么一个绩效考核场景:
每个月 23 号以后对上个月(上个月 24 号到本月 23 号)进行绩效统计考核,但是考核时间不确定,可能是本月月底,也有可能是下个月月初(23 号之前),更可气的是,绩效考核统计表中的数据是年初到现在所有的记录,所以只能计算出考核日期的准确区间来进行筛选。
反正我是经常遇到这种情况,代码不难,但是每次都需要写一遍,太麻烦了,所以分享出来,一是方便自己下次用到的时候
Ctrl + C
、Ctrl + V
,二是分享给大家,如果有需要,就不用自己想了,直接Ctrl + C
、Ctrl + V
就可以了
# 获取今天日期
today = "2019-09-22"
# 分别取得相应的年月日
year, month, day = today.split("-")
year_1 = year_2 = year
if day < "24":
month_1 = str(int(month) - 2).zfill(2)
month_2 = str(int(month) - 1).zfill(2)
else:
month_1 = str(int(month) - 1).zfill(2)
month_2 = month
if int(month_1) < 1:
year_1 = str(int(year) - 1)
month_1 = str(int(month_1) + 12).zfill(2)
if int(month_2) < 1:
year_2 = str(int(year) - 1)
month_2 = str(int(month_2) + 12).zfill(2)
# 开始日期
start_date = year_1 + "-" + month_1 + "-24"
# 结束日期
end_date = year_2 + "-" + month_2 + "-23"
print(start_date)
print(end_date)
这个必须点赞👍