Librării, module
Ce este un modul?
Modulele ne ajută să ne facem codul mai practic.
Modulele sunt fișiere ce conțin funcții.
Există module încorporate în limbaj și module care le putem crea.
În Python un modul e o simplă colecție de variabile, funcții și/sau clase(numite definiții) care pot fi importate în Python (de exemplu, modulul CSV).
Python conține multe module standarde, acestea sunt utilizate pentru a performa diferite operațiuni cum ar fi operații matematice avansate, operațiuni cu formate de fișiere specifice și baze de date, lucru cu date temporale.
Ca să putem folosi definițiile dintr-un modul, mai întâi trebuie să le importăm din acest modul. Pentru aceasta avem nevoie de import
.
Importarea întregului modul după nume.
Importarea unui întreg modul folosind un nume prescurtat(alias).
Importarea uneia sau a mai multor definiții din modul.
Importarea tuturor defințiilor din modul cu ajutorul metacaracterului *.
Cum creăm un modul?
Cum folosim modulul creat de noi?
Exemple de Module incorporate în limbaj
Math
Math este un modul automat inclus în Python, și oferă o serie de funcții utile care ne permite să executăm operații matematice.
math.floor()
- rotunjește numărul până până la o valoare mai mică decât numărul dat sau egală cu acesta
math.ceil()
- rotunjește numărul până până la o valoare mai mare decât numărul dat sau egală cu acesta
math.fabs()
- afișează modulul numărului
math.sqrt(x)
- calculează rădăcina de gradul 2 a unui număr
math.pow(x, y)
- calculează un număr ridicat la o anumită putere
Funcții logaritmice:
math.log(x, baza)
- calculează logaritmul unui număr cu o bază sugerată de utilizatormath.log2(x)
- calculează logaritmul unui număr cu baza 2math.log10(x)
- calculează logaritmul unui număr cu baza 10
Funcții trigonometrice:
math.cos(x)
- calculează cosinusul unui numărmath.sin(x)
- calculează sinusul unui numărmath.tan(x)
- calculează tangenta unui numărmath.acos(x)
- calculează arccosinusul unui numărmath.asin(x)
- calculează arcsinusul unui numărmath.atan(x)
- calculează arctangenta unui numărmath.atan2(y, x)
- calculează arctan(y / x)
Conversia dintre radiani și grade:
math.degrees(x)
math.radians(x)
Numerele constante stocate în modul:
Datetime
Python are trei module standarde folosite pentru lucrul cu datele temporale:
Modulul
calendar
Modulul
time
Modulul
datetime
Fiecare modul este focusat pe o arie specifică de interes, dar cel mai util modul din acestea trei este datetime
, respectiv despre el vom învăța mai departe.
Modulul datetime include mai multe clase, dintre care și următoarele:
datetime.datetime()
: pentru lucrul cu dăți(01-01-2021) și date de timp(03:40:00)datetime.time()
: pentru lucrul doar cu date de timpdatetime.timedelta()
: pentru reprezentarea perioadelor de timp
Clasa datetime
Clasa datetime.datetime() este cea mai utilizată din modulul datetime. Mai jos sunt parametrii pe care îi putem utiliza în această clasă.
datetime.datetime(year, month, day, hour = 0, minute = 0, second = 0)
Argumentele obligatorii sunt year, month, day, iar argumentele hour, minute, second sunt opționale.
Cum transformăm din date string în datetime și invers?
Pentru a 'parsa' (interpreta) acest string în formatul datetime, folosim metoda datetime.strptime().
Mai multe notații:
%a
- afișează ziua săptămânii în variantă prescurtată%A
- afișează ziua săptămânii%w
- afișează ziua săptămânii ca număr, 0 fiind duminica%d
- afișează ziua lunii%b
- afișează luna în variantă prescurtată%B
- afișează luna%m
- afișează luna ca numbăr%y
- afișează anul fără primele două cifre%Y
- afișează anul%H
- afișează ora în format de 24 ore%I
- afișează ora în format de 12 ore%M
- afișează minutele%S
- afișează secundele%f
- afișează milisecundele%z
- afișează ora militară%Z
- afișează fusul orar
Mai multă informație în Documentație
Metodata datetime.strftime() este utilizată pentru a formata un obiect datetime într-un string. Ea utilizează aceleași notații ca și metoda strptime()
.
Atributele clasei datetime.
Fiecare datetime e un obiect care are câteva atribute. Acestea ne permit să extragem detalii din obiect.
datetime.day - data unei luni
datetime.month - luna unui an
datetime.year - anul
datetime.hour - ora unei zile
datetime.minute - minuta unei ore
Alte metode ale clasei datetime
Metoda datetime.datetime.now()
afișează data și ora curentă.
Clasa time
Clasa time conține doar informații despre timp: ore, minute, secunde, și microsecunde.
Sintaxa de a instanția un obiect al clasei time:
datetime.time(hour = 0, minute = 0, second = 0, microsecond = 0)
Toate argumentele sunt opționale.
Putem extrage un obiect time dintr-un obiect datetime.
Cum tranformăm din string în obiect time?
Atributele clasei time
time.hour
time.second
Compararea obiectelor time
O caracteristică foarte utilă a obiectelor time este că acestea pot fi comparate.
De asemenea putem folosi funcțiile built-in din Python: min(), max().
Calcule cu Dates și Time.
Obiectele datetime la fel pot fi comparate ca și obiectele time, folosind operatorii >
și <
. Să vedem dacă putem folosi alți operatori precum +
și -
.
Observăm că atunci când folosim operatorul +
vom avea eroare care ne zice că acest operator nu este valid.
Atunci când folosim operatorul -
cu obiecte datetime, rezultatul va fi o diferență dintre două obiecte datetime. Să investigăm tipul de date al acestui obiect rezultant.
Clasa timedelta
Tipul de obiect timedelta reprezintă o perioadă de timp. Putem să creăm un obiect timedelta folosind operatorul -
, sau putem folosi clasa timedelta, utilizând această sintaxă:
datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0)
În tabelul de mai jos o să găsiți mai multe operții care pot fi făcute între obiecte de tip timedelta și datetime.
Operții | Explicație | Tipul rezultatului |
| Calculează timpul dintre două obiecte dates/times | timedelta |
| Scade o periodă de timp dintr-un obiect date sau time | datetime |
| Adaugă o periodă de timp la un obiect date sau time | datetime |
| Adună două perioade de timp împreună | timedelta |
| Calculează diferența dintre două perioade de timp | timedelta |
Numere constante stocate în modul.
Random
Acest modul conține funcții care ne permit să generăm numere sau secvențe pseudo-aleatorii.
Funcții ale modului random:
random.randrange(stop)
- generează un număr aleatoriu dintr-o gamărandom.randrange(start, stop, pași)
- generează un număr aleatoriu dintr-o gamărandom.uniform()
- alege un număr ce aparține mulțimii numerelor reale din o gamărandom.radint()
- alege un număr întreg ce aparține unei gamerandom.choice()
- alege un element dintr-o iterabilărandom.shuffle()
- reorganizează ordinea elementelor unei iterabile
Last updated