Modulul Calendar - aplicații
Modulul
calendar este foarte util când vine vorba de lucrul cu
date și
calendare în programare.
Cu ajutorul lui, poți efectua diverse operații, cum ar fi afișarea zilei curente, determinarea zilei săptămânii pentru
o anumită dată, generarea de evenimente și multe altele.
Pentru a începe să folosești modulul calendar, trebuie să îl importezi în programul tău.
Poți face acest lucru prin adăugarea liniei de cod următoare la începutul programului:
import calendar
Acum că am importat modulul, să vedem cum putem utiliza unele dintre funcțiile sale.
Aplicația 1. Pentru a afișa calendarul unui an întreg, putem folosi funcția
calendar.calendar(anul).
Aceasta va genera un șir de caractere care reprezintă calendarul complet pentru anul specificat.
De exemplu, pentru a afișa calendarul pentru anul 2023, putem folosi următorul cod:
import calendar
anul = 2023
calendarul = calendar.calendar(anul)
print(calendarul)
Rezultatul în consolă este evidențiat mai jos:
Aplicația 2. Dacă dorim să afișăm doar un singur calendar pentru o lună specifică,
putem utiliza funcția
calendar.month(anul, luna). Aceasta va genera un șir de caractere care
reprezintă calendarul pentru luna specificată. De exemplu, pentru a afișa calendarul pentru
luna iulie 2023, putem folosi următorul cod:
import calendar
anul = 2023
luna = 7
calendarul_lunii = calendar.month(anul, luna)
print(calendarul_lunii)
Aplicația 3. Dacă dorim să aflăm ziua săptămânii pentru o anumită dată, putem folosi
funcția
calendar.weekday(anul, luna, ziua). Aceasta va returna un număr între
0 și
6, unde
0
reprezintă ziua de
luni,
1 reprezintă ziua de
marți ș.a.m.d. De exemplu,
pentru a afla ziua săptămânii pentru data de 23 iulie 2023, putem folosi următorul cod:
import calendar
anul = 2023
luna = 7
ziua = 23
z = calendar.weekday(anul, luna, ziua)
print(z)
Putem afișa ziua săptămânii în format text, în limba română, cu ajutorul câtorva linii de cod:
import calendar
anul = 2023
luna = 7
ziua = 23
z = calendar.weekday(anul, luna, ziua)
if z == 0:
z = "Luni"
elif z == 1:
z = "Marti"
elif z == 2:
z = "Miercuri"
elif z == 3:
z = "Joi"
elif z == 4:
z = "Vineri"
elif z == 5:
z = "Sambata"
elif z == 6:
z = "Duminica"
print(z)
Astfel, rezultatul arată mai "uman", utilizatorul programului neștiind poate ce semnifică cifra 6 din codul programului
nostru dezvoltat:
Există și alte funcții utile în acest modul, cum ar fi
calendar.isleap(anul) pentru a verifica dacă un an
este bisect sau
calendar.monthrange(anul, luna) pentru a afla numărul de zile într-o lună dată.
Exerciții propuse
1. Să se introducă de la tastatură un an și o lună, iar apoi să se afișeze calendarul pentru acea lună.
2. Să se introducă de la tastatură un an, iar apoi să se afișeze dacă acel an este bisect sau nu.
3. Să se ceară utilizatorului să introducă o dată de început și o dată de sfârșit, iar apoi să se
afișeze numărul de zile lucrătoare (fără weekend) din acel interval.
Sugestie: utilizați funcția
calendar.weekday(anul, luna, ziua) și iterați prin zilele din interval pentru a număra zilele lucrătoare.
4. Se citesc un an și o listă de date de naștere (an, lună, zi) pentru un grup de persoane.
Să se afișeze toate zilele de naștere din acel an și să se calculeze câți ani vor împlini persoanele respective.
Sugestie: puteți apela la funcția
calendar.day_name pentru a obține numele zilelor săptămânii
și iterați prin datele de naștere pentru a le afișa și a calcula vârstele.
Pentru documentația completă a modulului, fiți autodidacți - descoperiți mai multe funcții
[
aici].
Cărțile editurii noastre
O parte dintre manualele și culegerile de probleme se găsește și [
în format electronic]
securizat sub formă
de fișier *.pdf.
"
O cameră fără cărţi este ca un corp fără suflet."
(G. K. Chesterton)
Cursanții au mai cumpărat ...
[
vezi lista completă a cărților]