Tipuri de date Python

În acest tutorial, veți afla despre diferite tipuri de date pe care le puteți utiliza în Python.

Tipuri de date în Python

Fiecare valoare din Python are un tip de date. Deoarece totul este un obiect în programarea Python, tipurile de date sunt de fapt clase și variabilele sunt instanță (obiect) a acestor clase.

Există diferite tipuri de date în Python. Unele dintre tipurile importante sunt enumerate mai jos.

Numere Python

Numere întregi, numerele cu virgulă mobilă și numerele complexe se încadrează în categoria numerelor Python. Acestea sunt definite ca int, floatși complexclase în Python.

Putem folosi type()funcția pentru a ști cărei clase îi aparține o variabilă sau o valoare. În mod similar, isinstance()funcția este utilizată pentru a verifica dacă un obiect aparține unei anumite clase.

 a = 5 print(a, "is of type", type(a)) a = 2.0 print(a, "is of type", type(a)) a = 1+2j print(a, "is complex number?", isinstance(1+2j,complex)) 

Ieșire

5 este de tip 2.0 este de tip (1 + 2j) este număr complex? Adevărat

Numerele întregi pot avea orice lungime, sunt limitate doar de memoria disponibilă.

Un număr cu virgulă mobilă este precis până la 15 zecimale. Punctele întregi și cele flotante sunt separate prin zecimale. 1 este un număr întreg, 1.0 este un număr cu virgulă mobilă.

Numerele complexe sunt scrise sub forma,, x + yjunde x este partea reală și y este partea imaginară. Aici sunt cateva exemple.

 >>> a = 1234567890123456789 >>> a 1234567890123456789 >>> b = 0.1234567890123456789 >>> b 0.12345678901234568 >>> c = 1+2j >>> c (1+2j) 

Observați că floatvariabila b a fost trunchiată.

Lista Python

Lista este o secvență ordonată de articole. Este unul dintre cele mai utilizate tipuri de date din Python și este foarte flexibil. Toate articolele dintr-o listă nu trebuie să fie de același tip.

Declararea unei liste este destul de simplă. Elementele separate prin virgule sunt încadrate între paranteze ( ).

 a = (1, 2.2, 'python') 

Putem folosi operatorul de tranșare ( )pentru a extrage un articol sau o serie de articole dintr-o listă. Indexul începe de la 0 în Python.

 a = (5,10,15,20,25,30,35,40) # a(2) = 15 print("a(2) = ", a(2)) # a(0:3) = (5, 10, 15) print("a(0:3) = ", a(0:3)) # a(5:) = (30, 35, 40) print("a(5:) = ", a(5:)) 

Ieșire

 a (2) = 15 a (0: 3) = (5, 10, 15) a (5 :) = (30, 35, 40) 

Listele sunt modificabile, ceea ce înseamnă că valoarea elementelor unei liste poate fi modificată.

 a = (1, 2, 3) a(2) = 4 print(a) 

Ieșire

 (1, 2, 4) 

Python Tuple

Tuple este o secvență ordonată de elemente la fel ca o listă. Singura diferență este că tuplurile sunt imuabile. Tuplurile odată create nu pot fi modificate.

Tuplurile sunt utilizate pentru protejarea la scriere a datelor și sunt de obicei mai rapide decât listele, deoarece nu se pot modifica dinamic.

Este definit între paranteze în ()care elementele sunt separate prin virgule.

 t = (5,'program', 1+3j) 

Putem folosi operatorul de tranșare ()pentru a extrage articole, dar nu putem schimba valoarea acestuia.

 t = (5,'program', 1+3j) # t(1) = 'program' print("t(1) = ", t(1)) # t(0:3) = (5, 'program', (1+3j)) print("t(0:3) = ", t(0:3)) # Generates error # Tuples are immutable t(0) = 10 

Ieșire

 t (1) = program t (0: 3) = (5, „program”, (1 + 3j)) Traceback (ultimul apel cel mai recent): Fișier „test.py”, linia 11, în t (0) = 10 TypeError: obiectul „tuplu” nu acceptă atribuirea articolelor 

Șiruri Python

Șirul este secvența de caractere Unicode. Putem folosi ghilimele simple sau ghilimele duble pentru a reprezenta șiruri. Șirurile cu mai multe linii pot fi notate folosind ghilimele triple '''sau """.

 s = "This is a string" print(s) s = '''A multiline string''' print(s) 

Ieșire

 Acesta este un șir Un șir multiliniu 

La fel ca o listă și un tuplu, operatorul de tăiere ( )poate fi utilizat cu șiruri. Cu toate acestea, corzile sunt imuabile.

 s = 'Hello world!' # s(4) = 'o' print("s(4) = ", s(4)) # s(6:11) = 'world' print("s(6:11) = ", s(6:11)) # Generates error # Strings are immutable in Python s(5) ='d' 

Ieșire

 s (4) = os (6:11) = world Traceback (ultimul apel cel mai recent): Fișierul "", linia 11, în TypeError: obiectul 'str' nu acceptă atribuirea articolului 

Set Python

Setul este o colecție neordonată de articole unice. Setul este definit de valori separate prin virgulă în interiorul parantezelor ( ). Articolele dintr-un set nu sunt comandate.

 a = (5,2,3,1,4) # printing set variable print("a = ", a) # data type of variable a print(type(a)) 

Ieșire

 a = (1, 2, 3, 4, 5) 

Putem efectua operații de set cum ar fi unirea, intersecția pe două seturi. Seturile au valori unice. Elimină duplicatele.

 a = (1,2,2,3,3,3) print(a) 

Ieșire

 (1, 2, 3) 

Deoarece, set sunt colecții neordonate, indexarea nu are sens. Prin urmare, operatorul de tăiere ()nu funcționează.

 >>> a = (1,2,3) >>> a(1) Traceback (most recent call last): File "", line 301, in runcode File "", line 1, in TypeError: 'set' object does not support indexing 

Dicționar Python

Dicționarul este o colecție neordonată de perechi cheie-valoare.

În general, este utilizat atunci când avem o cantitate imensă de date. Dicționarele sunt optimizate pentru preluarea datelor. Trebuie să cunoaștem cheia pentru a recupera valoarea.

În Python, dicționarele sunt definite în paranteze, ()fiecare articol fiind o pereche în formă key:value. Cheia și valoarea pot fi de orice tip.

 >>> d = (1:'value','key':2) >>> type(d) 

Folosim tasta pentru a recupera valoarea respectivă. Dar nu invers.

 d = (1:'value','key':2) print(type(d)) print("d(1) = ", d(1)); print("d('key') = ", d('key')); # Generates error print("d(2) = ", d(2)); 

Ieșire

 d (1) = valoare d ('cheie') = 2 Traceback (ultimul apel cel mai recent): Fișier "", linia 9, în KeyError: 2 

Conversia între tipurile de date

Putem converti între diferite tipuri de date folosind diferite funcții de tip de conversie cum ar fi int(), float(), str()etc.

 >>> float(5) 5.0 

Conversia de la float la int va trunchia valoarea (o va face mai aproape de zero).

 >>> int(10.6) 10 >>> int(-10.6) -10 

Conversia către și din șir trebuie să conțină valori compatibile.

 >>> float('2.5') 2.5 >>> str(25) '25' >>> int('1p') Traceback (most recent call last): File "", line 301, in runcode File "", line 1, in ValueError: invalid literal for int() with base 10: '1p' 

Putem chiar converti o secvență la alta.

 >>> set((1,2,3)) (1, 2, 3) >>> tuple((5,6,7)) (5, 6, 7) >>> list('hello') ('h', 'e', 'l', 'l', 'o') 

Pentru a converti în dicționar, fiecare element trebuie să fie o pereche:

 >>> dict(((1,2),(3,4))) (1: 2, 3: 4) >>> dict(((3,26),(4,44))) (3: 26, 4: 44) 

Articole interesante...