获取本周、上周、本月、上月及本季的时间在Python编程中是非常常见的需求,下面我将为大家提供一份详细的攻略。
获取本周、上周的时间
要获取本周的时间,可以使用Python内置的datetime
模块来获取。代码如下:
import datetime
# 获取本周的开始时间
today = datetime.date.today()
this_week_start = today - datetime.timedelta(days=today.weekday())
# 获取上周的时间
last_week_start = this_week_start - datetime.timedelta(days=7)
last_week_end = this_week_start - datetime.timedelta(days=1)
其中,today.weekday()
方法可以获取本周的第几天(0表示周一,1表示周二,以此类推),通过这个值可以算出本周的开始时间。
获取本月、上月的时间
要获取本月的时间,同样可以使用datetime
模块和calendar
模块来获取。代码如下:
import datetime
import calendar
# 获取本月的开始时间和结束时间
today = datetime.date.today()
_, last_day_num = calendar.monthrange(today.year, today.month)
this_month_start = datetime.date(today.year, today.month, 1)
this_month_end = datetime.date(today.year, today.month, last_day_num)
# 获取上月的开始时间和结束时间
if today.month == 1:
last_month_start = datetime.date(today.year-1, 12, 1)
last_month_end = datetime.date(today.year-1, 12, 31)
else:
_, last_month_last_day_num = calendar.monthrange(today.year, today.month-1)
last_month_start = datetime.date(today.year, today.month-1, 1)
last_month_end = datetime.date(today.year, today.month-1, last_month_last_day_num)
其中,calendar.monthrange()
方法可以获取某个月份的第一天是星期几以及这个月份有多少天。
获取本季的时间
要获取本季的时间,可以将当前月份除以3,得到当前季度,然后根据季度来计算本季的开始时间和结束时间。代码如下:
import datetime
# 获取本季的季度号,1表示第一季度,2表示第二季度,以此类推
this_month = datetime.date.today().month
this_quarter = (this_month-1) // 3 + 1
# 获取本季的开始时间和结束时间
this_quarter_start = datetime.date(datetime.date.today().year, (this_quarter-1)*3+1, 1)
this_quarter_end = datetime.date(datetime.date.today().year, this_quarter*3+1, 1) - datetime.timedelta(days=1)
其中,(this_month-1) // 3 + 1
可以用来计算当前月份所在的季度,(this_quarter-1)*3+1
和this_quarter*3+1
则分别是当前季度的第一个月和最后一个月。
至此,本文介绍了Python获取本周、上周、本月、上月及本季的时间的完整攻略,并提供了两条示例说明。希望能对大家有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python获取本周、上周、本月、上月及本季的时间代码实例 - Python技术站