我正在编写SQL查询以获取python中当前月份的第一个日期和最后一个日期之间的可用数据.为此,我如何获得当月的第一个和最后一个日期.(在stackoverflow中已经问过的问题只处理结束日期.我也希望答案作为日期字段,如01-03-2016或31-03-2016)
bak*_*kal 20
如何在python中获取当月的第一天和最后一天
标准库中有一个函数 calendar.monthrange(year, month)
>>> import calendar
>>> calendar.monthrange(2016, 3)
(1, 31)
Run Code Online (Sandbox Code Playgroud)
小心,monthrange 不返回第一天和最后几天的日期,但返回指定年份和月份的月份第一天的工作日和月份的天数.
所以要从中获取第一个和最后一个日期对象:
>>> _, num_days = calendar.monthrange(2016, 3)
>>> first_day = datetime.date(2016, 3, 1)
>>> last_day = datetime.date(2016, 3, num_days)
>>> first_day
datetime.date(2016, 3, 1)
>>> last_day
datetime.date(2016, 3, 31)
Run Code Online (Sandbox Code Playgroud)
>>> first_day.strftime('%d-%m-%Y')
'01-03-2016'
>>> last_day.strftime('%d-%m-%Y')
'31-03-2016'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23664 次 |
| 最近记录: |