Python Calendar calendar Function

The calendar function in Python's calendar module returns a multi-line string representing a year’s calendar. This function is useful for generating a text-based calendar for a specified year.

Table of Contents

  1. Introduction
  2. calendar Function Syntax
  3. Examples
    • Basic Usage
    • Generating a Calendar for a Specific Year
  4. Real-World Use Case
  5. Conclusion

Introduction

The calendar function in Python's calendar module generates a formatted string representing a calendar for an entire year. This function is particularly useful for displaying year calendars in a text-based format.

calendar Function Syntax

Here is how you use the calendar function:

import calendar

year_calendar = calendar.calendar(theyear, w=2, l=1, c=6, m=3)

Parameters:

  • theyear: The year for which the calendar is to be generated.
  • w: Width between date columns. Default is 2.
  • l: Number of lines per week. Default is 1.
  • c: Space between month columns. Default is 6.
  • m: Number of months per row. Default is 3.

Returns:

  • A multi-line string representing the calendar for the specified year.

Examples

Basic Usage

Here is an example of how to use the calendar function to generate a calendar for a specific year.

Example

import calendar

# Generating a calendar for the year 2024
year_calendar = calendar.calendar(2024)
print(year_calendar)

Output:

                                  2024

      January                   February                   March
Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
 1  2  3  4  5  6  7                1  2  3  4                   1  2  3
 8  9 10 11 12 13 14       5  6  7  8  9 10 11       4  5  6  7  8  9 10
15 16 17 18 19 20 21      12 13 14 15 16 17 18      11 12 13 14 15 16 17
22 23 24 25 26 27 28      19 20 21 22 23 24 25      18 19 20 21 22 23 24
29 30 31                  26 27 28 29               25 26 27 28 29 30 31

       April                      May                       June
Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
 1  2  3  4  5  6  7             1  2  3  4  5                      1  2
 8  9 10 11 12 13 14       6  7  8  9 10 11 12       3  4  5  6  7  8  9
15 16 17 18 19 20 21      13 14 15 16 17 18 19      10 11 12 13 14 15 16
22 23 24 25 26 27 28      20 21 22 23 24 25 26      17 18 19 20 21 22 23
29 30                     27 28 29 30 31            24 25 26 27 28 29 30

        July                     August                  September
Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
 1  2  3  4  5  6  7                1  2  3  4                         1
 8  9 10 11 12 13 14       5  6  7  8  9 10 11       2  3  4  5  6  7  8
15 16 17 18 19 20 21      12 13 14 15 16 17 18       9 10 11 12 13 14 15
22 23 24 25 26 27 28      19 20 21 22 23 24 25      16 17 18 19 20 21 22
29 30 31                  26 27 28 29 30 31         23 24 25 26 27 28 29
                                                    30

      October                   November                  December
Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
    1  2  3  4  5  6                   1  2  3                         1
 7  8  9 10 11 12 13       4  5  6  7  8  9 10       2  3  4  5  6  7  8
14 15 16 17 18 19 20      11 12 13 14 15 16 17       9 10 11 12 13 14 15
21 22 23 24 25 26 27      18 19 20 21 22 23 24      16 17 18 19 20 21 22
28 29 30 31               25 26 27 28 29 30         23 24 25 26 27 28 29
                                                    30 31

Generating a Calendar for a Specific Year

This example demonstrates how to customize the calendar output.

Example

import calendar

# Generating a calendar for the year 2024 with custom spacing
year_calendar = calendar.calendar(2024, w=4, l=1, c=10, m=2)
print(year_calendar)

Output:

                                     2024

             January                                     February
Mon  Tue  Wed  Thu  Fri  Sat  Sun           Mon  Tue  Wed  Thu  Fri  Sat  Sun
  1    2    3    4    5    6    7                            1    2    3    4
  8    9   10   11   12   13   14             5    6    7    8    9   10   11
 15   16   17   18   19   20   21            12   13   14   15   16   17   18
 22   23   24   25   26   27   28            19   20   21   22   23   24   25
 29   30   31                                26   27   28   29

              March                                       April
Mon  Tue  Wed  Thu  Fri  Sat  Sun           Mon  Tue  Wed  Thu  Fri  Sat  Sun
                      1    2    3             1    2    3    4    5    6    7
  4    5    6    7    8    9   10             8    9   10   11   12   13   14
 11   12   13   14   15   16   17            15   16   17   18   19   20   21
 18   19   20   21   22   23   24            22   23   24   25   26   27   28
 25   26   27   28   29   30   31            29   30

               May                                         June
Mon  Tue  Wed  Thu  Fri  Sat  Sun           Mon  Tue  Wed  Thu  Fri  Sat  Sun
            1    2    3    4    5                                      1    2
  6    7    8    9   10   11   12             3    4    5    6    7    8    9
 13   14   15   16   17   18   19            10   11   12   13   14   15   16
 20   21   22   23   24   25   26            17   18   19   20   21   22   23
 27   28   29   30   31                      24   25   26   27   28   29   30

               July                                       August
Mon  Tue  Wed  Thu  Fri  Sat  Sun           Mon  Tue  Wed  Thu  Fri  Sat  Sun
  1    2    3    4    5    6    7                            1    2    3    4
  8    9   10   11   12   13   14             5    6    7    8    9   10   11
 15   16   17   18   19   20   21            12   13   14   15   16   17   18
 22   23   24   25   26   27   28            19   20   21   22   23   24   25
 29   30   31                                26   27   28   29   30   31

            September                                    October
Mon  Tue  Wed  Thu  Fri  Sat  Sun           Mon  Tue  Wed  Thu  Fri  Sat  Sun
                                1                  1    2    3    4    5    6
  2    3    4    5    6    7    8             7    8    9   10   11   12   13
  9   10   11   12   13   14   15            14   15   16   17   18   19   20
 16   17   18   19   20   21   22            21   22   23   24   25   26   27
 23   24   25   26   27   28   29            28   29   30   31
 30

             November                                    December
Mon  Tue  Wed  Thu  Fri  Sat  Sun           Mon  Tue  Wed  Thu  Fri  Sat  Sun
                      1    2    3                                           1
  4    5    6    7    8    9   10             2    3    4    5    6    7    8
 11   12   13   14   15   16   17             9   10   11   12   13   14   15
 18   19   20   21   22   23   24            16   17   18   19   20   21   22
 25   26   27   28   29   30                 23   24   25   26   27   28   29
                                             30   31

Real-World Use Case

Generating Printable Calendars

In real-world applications, the calendar function can be used to generate text-based calendars for printing or displaying in command-line interfaces.

Example

import calendar

def generate_year_calendar(year):
    return calendar.calendar(year)

# Example usage
year = 2024
print(generate_year_calendar(year))

Output:

                                  2024

      January                   February                   March
Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
 1  2  3  4  5  6  7                1  2  3  4                   1  2  3
 8  9 10 11 12 13 14       5  6  7  8  9 10 11       4  5  6  7  8  9 10
15 16 17 18 19 20 21      12 13 14 15 16 17 18      11 12 13 14 15 16 17
22 23 24 25 26 27 28      19 20 21 22 23 24 25      18 19 20 21 22 23 24
29 30 31                  26 27 28 29               25 26 27 28 29 30 31

       April                      May                       June
Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
 1  2  3  4  5  6  7             1  2  3  4  5                      1  2
 8  9 10 11 12 13 14       6  7  8  9 10 11 12       3  4  5  6  7  8  9
15 16 17 18 19 20 21      13 14 15 16 17 18 19      10 11 12 13 14 15 16
22 23 24 25 26 27 28      20 21 22 23 24 25 26      17 18 19 20 21 22 23
29 30                     27 28 29 30 31            24 25 26 27 28 29 30

        July                     August                  September
Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
 1  2  3  4  5  6  7                1  2  3  4                         1
 8  9 10 11 12 13 14       5  6  7  8  9 10 11       2  3  4  5  6  7  8
15 16 17 18 19 20 21      12 13 14 15 16 17 18       9 10 11 12 13 14 15
22 23 24 25 26 27 28      19 20 21 22 23 24 25      16 17 18 19 20 21 22
29 30 31                  26 27 28 29 30 31         23 24 25 26 27 28 29
                                                    30

      October                   November                  December
Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
    1  2  3  4  5  6                   1  2  3                         1
 7  8  9 10 11 12 13       4  5  6  7  8  9 10       2  3  4  5  6  7  8
14 15 16 17 18 19 20      11 12 13 14 15 16 17       9 10 11 12 13 14 15
21 22 23 24 25 26 27      18 19 20 21 22 23 24      16 17 18 19 20 21 22
28 29 30 31               25 26 27 28 29 30         23 24 25 26 27 28 29
                                                    30 31

Conclusion

The calendar function in Python's calendar module generates a multi-line string representing a year’s calendar. This function is useful for creating text-based calendars for a specified year, allowing for easy display and printing of year-long calendars.

Comments

Spring Boot 3 Paid Course Published for Free
on my Java Guides YouTube Channel

Subscribe to my YouTube Channel (165K+ subscribers):
Java Guides Channel

Top 10 My Udemy Courses with Huge Discount:
Udemy Courses - Ramesh Fadatare