w3resource

Python: Create a HTML calendar with data for a specific year and month

Python Datetime: Exercise-46 with Solution

Write a Python program to create a HTML calendar with data for a specific year and month.

Sample Solution:

Python Code:

# Import the calendar module
import calendar
# Create an HTMLCalendar object with Monday as the first day of the week
htmlcal = calendar.HTMLCalendar(calendar.MONDAY)
# Generate and print the HTML-formatted calendar for December 2020
print(htmlcal.formatmonth(2020, 12))

HTML Code:


<table border="0" cellpadding="0" cellspacing="0" class="month">                                              
<tr><th colspan="7" class="month">December 2020</th></tr>                                                     
<tr><th class="mon">Mon</th><th class="tue">Tue</th><th class="wed">Wed</th><th class="thu">Thu</th><th class=
"fri">Fri</th><th class="sat">Sat</th><th class="sun">Sun</th></tr>                                           
<tr><td class="noday"> </td><td class="tue">1</td><td class="wed">2</td><td class="thu">3</td><td class="
fri">4</td><td class="sat">5</td><td class="sun">6</td></tr>                                                  
<tr><td class="mon">7</td><td class="tue">8</td><td class="wed">9</td><td class="thu">10</td><td class="fri">1
1</td><td class="sat">12</td><td class="sun">13</td></tr>                                                     
<tr><td class="mon">14</td><td class="tue">15</td><td class="wed">16</td><td class="thu">17</td><td class="fri
">18</td><td class="sat">19</td><td class="sun">20</td></tr>                                                  
<tr><td class="mon">21</td><td class="tue">22</td><td class="wed">23</td><td class="thu">24</td><td class="fri
">25</td><td class="sat">26</td><td class="sun">27</td></tr>                                                  
<tr><td class="mon">28</td><td class="tue">29</td><td class="wed">30</td><td class="thu">31</td><td class="nod
ay"> </td><td class="noday"> </td><td class="noday"> </td></tr>                                
</table>  

See the output in the browser

Output:

December 2020
MonTueWedThuFriSatSun
 123456
789101 11213
14151617181920
21222324252627
28293031   

Explanation:

In the exercise above,

  • The code imports the "calendar" module, which provides functions for working with calendars.
  • It creates an "HTMLCalendar" object named 'htmlcal' with Monday as the first day of the week, specified by passing "calendar.MONDAY" as an argument.
  • It generates and prints the HTML-formatted calendar for December 2020 using the "formatmonth()" method of the 'HTMLCalendar' object. This method generates an HTML-formatted calendar for a specific month and year.

Flowchart:

Flowchart: Create a HTML calendar with data for a specific year and month.

Python Code Editor:

Contribute your code and comments through Disqus.

Previous: Write a Python program to get the current week.
Next: Write a Python program display a list of the dates for the 2nd Saturday of every month for a given year.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://www.w3resource.com/python-exercises/date-time-exercise/python-date-time-exercise-46.php