我们先来设定一个场景:在处理数据时,你需要根据今天的日期去识别上月日期:
我们一般利用datetime去31的数值做差值来识别上月的日期
import datetime last_month = datetime.datetime.today() - datetime.timedelta(days=31)
但是问题来了,假设上月天数时30天?28天怎么办?,手动改数值?哈,万一遗忘了,可就很麻烦了,所以还是交给代码吧!
解决方法:只需要将上月的年和月进行天数识别就可以了,这里用到:
calendar库:
下载和引用(以spyder为例,其他常用前面不用加!):
!pip install calendar #下载安装 import calendar #引用
last_month = datetime.datetime.today() - datetime.timedelta(days=31) c1 = int(str(last_month.year)) d1 = int(str(last_month.month)) last_month_days = calendar.monthrange(c1,d1)[1] last_month = datetime.datetime.today() - datetime.timedelta(days=int(last_month_days))
这样就可以根据上月的月份和年份进行识别,自动去调整days的数值。



