El módulo de calendario permite generar calendarios como un programa y proporciona funciones útiles adicionales relacionadas con el calendario. Las funciones y clases definidas en el módulo Calendario utilizan un calendario idealizado, el actual calendario gregoriano extendido indefinidamente en ambas direcciones.
El método monthdatescalendar() en Python se usa para obtener una lista de las semanas en el mes del año como semanas completas.
Syntax: monthdatescalendar(year, month) Parameter: year: year of the calendar month: month of the calendar Returns: a list of the weeks in the month.
Código #1:
Python3
# Python program to demonstrate working # of monthdatescalendar() method # importing calendar module import calendar obj = calendar.Calendar() year = 2018 month = 9 # printing with monthdatescalendar print(obj.monthdatescalendar(year, month))
Producción:
[[datetime.date(2018, 8, 27), datetime.date(2018, 8, 28), datetime.date(2018, 8, 29), datetime.date(2018, 8, 30), datetime.date( 2018, 8, 31), fechahora.fecha(2018, 9, 1), fechahora.fecha(2018, 9, 2)], [fechahora.fecha(2018, 9, 3), fechahora.fecha(2018, 9, 4), fechahora.fecha(2018, 9, 5), fechahora.fecha(2018, 9, 6), fechahora.fecha(2018, 9, 7), fechahora.fecha(2018, 9, 8), fechahora.fecha (2018, 9, 9)], [fechahora.fecha(2018, 9, 10), fechahora.fecha(2018, 9, 11), fechahora.fecha(2018, 9, 12), fechahora.fecha(2018, 9 , 13), fechahora.fecha(2018, 9, 14), fechahora.fecha(2018, 9, 15), fechahora.fecha(2018, 9, 16)], [fechahora.fecha(2018, 9, 17), fechahora.fecha(2018, 9, 18), fechahora.fecha(2018, 9, 19), fechahora.fecha(2018, 9, 20), fechahora.fecha(2018, 9, 21), fechahora.fecha(2018, 9, 22), datetime.date(2018, 9, 23)], [datetime.date(2018, 9, 24), datetime.date(2018, 9, 25), datetime.date(2018,9, 26), datetime.date(2018, 9, 27), datetime.date(2018, 9, 28), datetime.date(2018, 9, 29), datetime.date(2018, 9, 30)]]
Tenga en cuenta que las semanas en la salida son listas de siete objetos datetime.date.
Código #2: iterando la lista de semanas
Python3
# Python program to demonstrate working # of monthdatescalendar() method # importing calendar module import calendar obj = calendar.Calendar() # iterating with monthdatescalendar for day in obj.monthdatescalendar(2018, 9): print(day)
Producción:
[datetime.date(2018, 8, 27), datetime.date(2018, 8, 28), datetime.date(2018, 8, 29), datetime.date(2018, 8, 30), datetime.date(2018 , 8, 31), fechahora.fecha(2018, 9, 1), fechahora.fecha(2018, 9, 2)]
[fechahora.fecha(2018, 9, 3), fechahora.fecha(2018, 9, 4) , fechahora.fecha(2018, 9, 5), fechahora.fecha(2018, 9, 6), fechahora.fecha(2018, 9, 7), fechahora.fecha(2018, 9, 8), fechahora.fecha(2018 , 9, 9)]
[fechahora.fecha(2018, 9, 10), fechahora.fecha(2018, 9, 11), fechahora.fecha(2018, 9, 12), fechahora.fecha(2018, 9, 13) , datetime.date(2018, 9, 14), datetime.date(2018, 9, 15), datetime.date(2018, 9, 16)]
[datetime.date(2018, 9, 17), datetime.date( 2018, 9, 18), fechahora.fecha(2018, 9, 19), fechahora.fecha(2018, 9, 20), fechahora.fecha(2018, 9, 21), fechahora.fecha(2018, 9, 22) , fechahora.fecha(2018, 9, 23)]
[datetime.date(2018, 9, 24), datetime.date(2018, 9, 25), datetime.date(2018, 9, 26), datetime.date(2018, 9, 27), datetime.date(2018 , 9, 28), fechahora.fecha(2018, 9, 29), fechahora.fecha(2018, 9, 30)]