Python KALENDER-tutorial met voorbeeld

Kalendermodule in Python heeft de kalenderklasse die berekeningen voor verschillende taken mogelijk maakt op basis van datum, maand en jaar. Daarbovenop zijn de TextCalendar- en HTMLCalendar-klassen aanwezig Python Hiermee kunt u de kalender bewerken en gebruiken volgens uw vereisten.

Laten we eens kijken wat we ermee kunnen doen Python Kalender.

Stap 1) Voer de code uit.

KALENDER binnen Python

  • Coderegel # 1: We beginnen met "kalender importeren", waarmee alle klassen van deze module worden geïmporteerd.
  • Coderegel # 3: c= kalender.TextCalendar(calendar.SUNDAY) vertelt de tolk dat hij een tekstkalender moet maken. Het begin van de maand zal zondag zijn. In Python, kunt u de kalender opmaken, omdat u om te beginnen de dag van de maand kunt wijzigen
  • Coderegel # 4: str= c.formatmonth(2025,1) We maken een kalender voor het jaar 2025, maand 1 – januari
  • Coderegel # 5: print str drukt de uitvoer af.

Laten we de waarde snel wijzigen van zondag in donderdag en de uitvoer controleren

KALENDER binnen Python

Stap 2) U kunt de kalender ook in HTML-formaat afdrukken. Deze functie is handig voor ontwikkelaars als ze wijzigingen willen aanbrengen in het uiterlijk van de kalender

KALENDER binnen Python

Stap 3) Passanten over de dagen van een maand met behulp van c.itermonthday (2025,4), wordt het totale aantal dagen voor die maand opgehaald.

KALENDER binnen Python

  • Wanneer u de code uitvoert om het totale aantal dagen voor een specifieke maand te krijgen, zegt u 'April', dan krijgt u 30 dagen in de uitvoer, maar ziet u ook enkele nullen naast deze dagen aan het begin en soms aan het einde ervan .
  • Nullen in de uitvoer betekenen dat de dag van de week zich in een overlappende maand bevindt, wat betekent dat deze niet bij die maand hoort.
  • Deze nullen verschijnen in de uitvoer omdat u in uw code dag (donderdag) hebt genoemd, dus als u de functie "c.itermonthdays" aanroept, begint deze vanaf donderdag de dagen te tellen en begint uw donderdag mogelijk niet met datum 1st van april zou het 28 kunnen zijnth of 29th van maart, dus wanneer u de code uitvoert, begint deze vanaf 28 dagen te tellenth van maart en alle dagen daarna tot 1st van april. Deze dagen worden als nul geteld en in de uitvoer ziet u deze nullen. Hetzelfde geldt voor het einde van de maand.
  • Dus behalve datum 1-30 worden alle datums van zowel de vorige als de postmaand in de uitvoer weergegeven als nullen.

Stap 4) U kunt de gegevens ophalen van het lokale systeem, zoals maanden of weekdagen, enz

KALENDER binnen Python

  • De output hier laat zien dat we de naam van de maanden hebben afgedrukt van het lokale systeem. Op dezelfde manier kunt u ook de naam van de weekdagen ophalen zoals hieronder weergegeven
  • De uitvoer zal afhangen van het lokale systeem. Stel dat uw lokale systeem zich in een ander land bevindt, dan zal het de uitvoer geven volgens de lokale instellingen van dat land. Hier hebben we maanden, dus het zal geen verschil zijn, maar als het een week of een dag is, zal het zeker verschillen.

KALENDER binnen Python

Stap 5) U kunt de lijst van de specifieke dag voor een heel jaar ophalen. Zo is er op elke eerste auditdag een auditdag Monday van een week. U wilt eerst de datum weten Monday voor elke maand. U kunt deze code gebruiken

KALENDER binnen Python

  • mycal = kalender.maandkalender(2025, maand) maakt een kalender voor de maand
  • Stel de variabelen week1 en week2 in op de eerste en tweede week van de kalender
  • Controleer of week 1 dit bevat Monday, stel de auditdag in
  • Stel anders de auditdag in als de eerste Monday week 2
  • De uitvoer toont de datum voor de eerste Monday dat valt in die maand.
  • De lengte van dit Cal-object zal een bepaalde lengte hebben, gebaseerd op het aantal weken in de maand. In ons geval zullen het er eerst één of twee zijn Monday van de week zal meestal in de eerste week zijn, maar als dat niet het geval is, overweeg dan de tweede week. Laten we eens in detail bekijken waarom we ook de tweede week in beschouwing nemen.
  • Hier gebruiken we de constante van de kalender Mondaygeeft het kalenderobject je constanten die zondag vertegenwoordigen, Monday, dinsdag, enzovoort, enzovoort. Deze hebben we eerder gezien. Dus als in week één de dag wordt weergegeven door de Monday constante is niet gelijk aan 0, onthoud dat nullen dagen betekenen die bij een andere maand horen. Dus in dit geval, als het nul is, wordt het a Monday dat hoort bij de vorige maand. Maar als de eerste Monday is niet gelijk aan 0, dat betekent dat mijn auditdag binnen week één zal zijn. Anders, als dat 0 is, dan is de eerste Monday Het is niet in de eerste week van de maand, het moet in de tweede week zijn.
  • Dus dan zeg ik oké, stel mijn auditdagvariabele in op de Monday vertegenwoordigd door week twee. Dus de auditdag komt terug met wat de dag ook is voor de eerste of tweede week.

Hier is de volledige code

Python 2 Voorbeeld

import calendar
# Create a plain text calendar
c = calendar.TextCalendar(calendar.THURSDAY)
str = c.formatmonth(2025, 1, 0, 0)
print str

# Create an HTML formatted calendar
hc = calendar.HTMLCalendar(calendar.THURSDAY)
str = hc.formatmonth(2025, 1)
print str
# loop over the days of a month
# zeroes indicate that the day of the week is in a next month or overlapping month
for i in c.itermonthdays(2025, 4):
    print i

    # The calendar can give info based on local such a names of days and months (full and abbreviated forms)
    for name in calendar.month_name:
        print name
    for day in calendar.day_name:
        print day
    # calculate days based on a rule: For instance an audit day on the second Monday of every month
    # Figure out what days that would be for each month, we can use the script as shown here
    for month in range(1, 13):
		# It retrieves a list of weeks that represent the month
        mycal = calendar.monthcalendar(2025, month)
		# The first MONDAY has to be within the first two weeks
        week1 = mycal[0]
        week2 = mycal[1]
        if week1[calendar.MONDAY] != 0:
            auditday = week1[calendar.MONDAY]
        else:
        # if the first MONDAY isn't in the first week, it must be in the second week
        	auditday = week2[calendar.MONDAY]
print "%10s %2d" % (calendar.month_name[month], auditday)

Python 3 Voorbeeld

import calendar
# Create a plain text calendar
c = calendar.TextCalendar(calendar.THURSDAY)
str = c.formatmonth(2025, 1, 0, 0)
print(str)

# Create an HTML formatted calendar
hc = calendar.HTMLCalendar(calendar.THURSDAY)
str = hc.formatmonth(2025, 1)
print(str)
# loop over the days of a month
# zeroes indicate that the day of the week is in a next month or overlapping month
for i in c.itermonthdays(2025, 4):
    print(i)

    # The calendar can give info based on local such a names of days and months (full and abbreviated forms)
    for name in calendar.month_name:
        print(name)
    for day in calendar.day_name:
        print(day)
    # calculate days based on a rule: For instance an audit day on the second Monday of every month
    # Figure out what days that would be for each month, we can use the script as shown here
    for month in range(1, 13):
		# It retrieves a list of weeks that represent the month
        mycal = calendar.monthcalendar(2025, month)
		# The first MONDAY has to be within the first two weeks
        week1 = mycal[0]
        week2 = mycal[1]
        if week1[calendar.MONDAY] != 0:
            auditday = week1[calendar.MONDAY]
        else:
        # if the first MONDAY isn't in the first week, it must be in the second week
        	auditday = week2[calendar.MONDAY]
print("%10s %2d" % (calendar.month_name[month], auditday))

Samenvatting

  • In Python, kunt u de kalender opmaken zoals u dat wilt, omdat u de dag van de maand kunt wijzigen om te beginnen
  • Druk de kalender af in HTML-formaat
  • Haal de gegevens op van het lokale systeem, zoals maanden of weekdagen
  • Haal de lijst van de specifieke dag op voor een heel jaar