Mai jos avem un tabel cu date de pe portalul de filme fandango.com
Pentru a putea opera cu datele din acest tabel, trebuie să le stocam în variabile.
movie_row0 = 'Avengers: Age of Ultron'
year_row0 = 2015
rating_value_row0 = 4.5
votes_row0 = 14846
Dacă am crea câte o variabilă pentru fiecare valoare din acest tabel, am avea 20 de variabile. Prea multe!
În schimb putem să creăm o lista de valori.
row0 = ['Avengers: Age of Ultron', 2015, 4.5, 14846]
# sau
movies = ['Avengers: Age of Ultron', 'Cinderella', 'Ant-Man',
'Do You Believe?', 'Hot Tub Time Machine 2']
Observați că itemii sunt scriși între paranteze pătrate. O listă poate fi și goală
lista_goala = []
Intro
Listele sunt structuri de date în care putem să stocăm mai multe valori.
Listele au o ordine, pot fi editate și permit duplicate.
O listă poate conține toate tipurile de valori.
lista_mea = [ False, 56.4, 4, 'Ford', 1j]
print(type(lista_mea))
len(lista_mea) # funcția care ne permite să vedem lungimea listei
Puteți accesa un item al listei după index-ul său. Un index e ca o adresă care identifică locul itemului în listă. Index-ul se scrie direct după numele listei, în paranteze pătrate, cam așa: nume_lista[index]. Puteți să accesați primul element al unei liste în felul următor: nume_lista[0]. Al doilea item îl accesați așa: nume_lista[1]. Programatorii iubesc să numere de la zero.
Este necesar să știm că prima poziție la indexare este 0.
Accesăm mai multe variabile
Dar dacă dorim să accesăm mai multe variabile în același timp?
# Va printa elementele din listă cu indexul 2, 3 și 4.
print(lista_mea[2:5])
# 4, 'Ford', 1j
# Va printa elementele din listă de la început până la cel cu indexul 3 inclusiv.
print(lista_mea[:4])
# False, 56.4, 4, 'Ford'
# Va printa elementele de la cel cu indexul 3 până la sfârșit.
print(lista_mea[3:])
# 'Ford', 1j
Cum verificăm dacă un element există în lista noastră?
if 4 in lista_mea:
print('Da, aceste element există în listă')
else:
print('Nu, acest element nu există în listă')
Înlocuirea elementelor
Cum înlocuim un element din listă?
lista_mea[2]='Joi'
print(lista_mea)
Adăugarea elementelor
Cum adăugăm elemente la lista noastră?
.append() - Pentru a adăuga un element la un index nespecificat, în coada de listă
.insert() - Pentru a adăuga un element la un index specificat
.append(var)
my_list = [] #lista goala
x = 7
b = 10
my_list.append(x)
my_list.append(b)
my_list.append(9)
print(my_list)
.insert(index, var) - va adăuga variabilavar pe poziția cu numărul index în lista noastră.
lista_mea.insert(1, "Luni")
print(lista_mea)
Extinderea listei
list1.extend(list2) va concatena (adăuga) elementele din lista 2 - list2în lista 1 - list1.
# avem stocate valorile din fiecare rând al tabelului
# în câte o listă.
header = ['name', 'gender', 'eye_color', 'race',
'hair_color', 'height', 'alignement', 'weight']
r1 = ['Black Widow', 'Female', 'green', 'Human',
'Auburn', 170.0, 'good', 59.0]
r2 = ['Thanos', 'Male', 'red', 'Eternal',
'No Hair', 201.0, 'bad', 443.0]
r3 = ['Deadpool', 'Male', 'brown', 'Mutant',
'No Hair', 188.0, 'neutral', 95.0]
r4 = ['Captain Marvel','Female','blue','Human-Kree',
'Blond',180.0,'good',74.0]
r5 = ['Doctor Strange', 'Male', 'grey', 'Human',
'Black', 188.0, 'good', 81.0]
r6 = ['Iron Man', 'Male', 'blue', 'Human',
'Black', 198.0, 'good', 191.0]
r7 = ['Thor', 'Male', 'blue', 'Asgardian',
'Blond', 198.0, 'good', 288.0]
r8 = ['Venom','Male','blue','Symbiote',
'Strawberry Blond',191.0,'bad',117.0]
# în baza de date originală sunt 215 eroi
# asta ar însemna 215 rânduri respectiv 215 variabile
# mai jos avem o singură variabilă pentru toate rândurile
marvel = [header, r1, r2, r3, r4, r5, r6, r7, r8]
# haideți să investigăm cum arată lista marvel
marvel
Selectarea elementelor
# accesăm un element din lista de liste exact așa
# cum accesăm într-o listă obișnuită un element
print(marvel[2])
print(marvel[2:4])
# ce observați? ce s-a afișat?
Dar cum accesăm un element din lista unei liste?
Mai jos avem o listă de liste reprezentată ca o matrice. Observați că unui element din lista de liste îi corespund indecșii conform cu poziția sa în matrice.
Respectiv primului element dintr-o listă din listă s-ar poziționa în rândul 0 și coloana 0.
În exemplul 2 avem un element din rândul 1, coloana 2.
# mai întâi haideți să accesăm denumirile
# coloanelor lui marvel
marvel[0]
# primul rând l-am rezervat pentru numele coloanelor