当前位置: 代码迷 >> 综合 >> python 指定月份的天数、指定日期为周几、指定月份有几个周日、闰年 calender
  详细解决方案

python 指定月份的天数、指定日期为周几、指定月份有几个周日、闰年 calender

热度:55   发布时间:2024-02-21 23:02:19.0

python 指定月份的天数、指定日期为周几、指定月份有几个周日、闰年 calender

1、指定月份的天数

import calendar
import datetime as dt
date1 = dt.date(2020, 9, 1)
n_days = calendar.monthrange(2020, 9)   # 返回结果:(1, 30)
# calendar.monthrange(year,month):第一个参数:指定月份第一天为周几(0-6 对应 周一 -周日);第二个参数:指定月份的天数

2、指定日期为周几

week = calendar.weekday(2020,9,23)   # 返回结果:2
# calendar.weekday(year,month,day):(0-6 对应 周一 -周日)

3、输出指定月份

calendar.month(2020, 9)   # 返回结果:' September 2020\nMo Tu We Th Fr Sa Su\n 1 2 3 4 5 6\n 7 8 9 10 11 12 13\n14 15 16 17 18 19 20\n21 22 23 24 25 26 27\n28 29 30\n'
# calendar.month(year, month):指定月份的多行文本字符串

4、获取指定月份所有的日期

date1 = dt.date(2020,9,1)
dates = [(date1 + dt.timedelta(i)) for i in range(n_days[1])]

5、计算指定月份有几个周日

n_sundays = 0
for d in dates:n_sundays += int(d.isoweekday() == 6)

6、闰年
(1)判断指定月是否为闰年

calendar.isleap(2020)   # 返回结果:True
# calendar.isleap(year):闰年为True,平年为False

(2)两个年份间的闰年数量

calendar.leapdays(2008, 2020)  # 返回结果:3
# calendar.leapdays(year1, year2):year1与year2年份之间的闰年数量(包括起始年,不包括结束年)