Python clasa a 9-a · Manual Python
Laborator Python
LECȚIE · CAPITOLUL 8

8.2. Operații elementare cu liste

Apartenență, concatenare, multiplicare, relaționare și funcții predefinite

APARȚINE
→
COMBINĂ
→
COMPARĂ
→
ANALIZEAZĂ
01
OBIECTIVE

La finalul lecției vei putea...

01

Utilizarea operatorilor in și not in.

Utilizarea operatorilor in și not in.

02

Concatenarea și multiplicarea listelor.

Concatenarea și multiplicarea listelor.

03

Compararea listelor cu operatorii relaționali

Compararea listelor cu operatorii relaționali.

04

Utilizarea len(), min(), max() și sum() pentr

Utilizarea len(), min(), max() și sum() pentru liste numerice.

05

Alegerea operației potrivite pentru o cerință

Alegerea operației potrivite pentru o cerință.

✓
Checkpoint

Poți explica, în propriile cuvinte, ideea centrală a lecției?

02
EXPLICAȚIE

Operații elementare cu liste

După ce am învățat să creăm și să accesăm liste, putem compara liste, verifica apartenența unei valori, combina liste și determina informații despre conținutul lor. Aceste operații formează baza prelucrării listelor.

Apartenența

Operatorul in verifică dacă o valoare apare în listă, iar not in verifică absența ei. Rezultatul este True sau False.

Concatenarea și multiplicarea

Operatorul + concatenează două liste fără a modifica listele inițiale. Operatorul * repetă o listă de un anumit număr de ori.

Compararea listelor

Python compară elementele în ordine, de la stânga la dreapta. Pentru liste cu aceleași elemente în aceeași ordine, == este True.

Funcții utile

len(L) determină numărul de elemente. Pentru liste numerice, min(L), max(L) și sum(L) determină minimul, maximul și suma.

Aceste funcții presupun date compatibile. De exemplu, min și sum nu se aplică unei liste care amestecă tipuri incompatibile.

03
EXEMPLU INTUITIV

Înțelegem conceptul înainte de problemă

Pentru o listă de produse, in răspunde la întrebarea „există produsul?”. Pentru două liste de cumpărături, + le unește. Pentru o listă de punctaje, len indică numărul de punctaje, iar min, max și sum permit o analiză rapidă.

Verifică apartenența

—

Combină liste

A=[1,2], B=[3,4]

04
PYTHON

Aplicarea conceptelor în Python

note = [8, 10, 7, 9]
print(10 in note)
print(6 not in note)

a = [1, 2]
b = [3, 4]
c = a + b
d = a * 3
print(c)
print(d)

L = [4, 7, 2, 9]
print(len(L))
print(min(L))
print(max(L))
print(sum(L))

print([1, 2] == [1, 2])
print([1, 2] < [1, 3])

Observă că + lucrează asupra listelor ca structuri, iar sum adună valorile numerice dintr-o listă.

05
ALGORITM / PSEUDOCOD

Descrierea algoritmului înaintea implementării

ALGORITM Apartenență
    dacă x aparține lui L atunci
        afișează ADEVĂRAT
    altfel
        afișează FALS
SFÂRȘIT ALGORITM

ALGORITM Analiză listă numerică
    n ← lungimea lui L
    minim ← valoarea minimă din L
    maxim ← valoarea maximă din L
    suma ← suma elementelor lui L
    afișează n, minim, maxim, suma
SFÂRȘIT ALGORITM
06
ATENȚIE!

Erori și confuzii frecvente

  • in verifică elemente ale listei, nu indici.
  • + pentru liste înseamnă concatenare, nu adunare element cu element.
  • * repetă lista; nu înmulțește numeric fiecare element.
  • min, max și sum se folosesc aici pentru liste numerice compatibile.
  • O listă goală are len egal cu 0; sum([]) este 0, iar min([]) și max([]) produc eroare.
07
EXEMPLU REZOLVAT

Analiza a două liste de note

Enunț

Se dau două liste de note. Determinați numărul total de note, suma tuturor notelor, cea mai mică și cea mai mare notă și verificați dacă nota 10 apare.

Analiză

Concatenăm listele, apoi folosim len, sum, min, max și in.

Algoritm / pseudocod

ALGORITM Apartenență
    dacă x aparține lui L atunci
        afișează ADEVĂRAT
    altfel
        afișează FALS
SFÂRȘIT ALGORITM

ALGORITM Analiză listă numerică
    n ← lungimea lui L
    minim ← valoarea minimă din L
    maxim ← valoarea maximă din L
    suma ← suma elementelor lui L
    afișează n, minim, maxim, suma
SFÂRȘIT ALGORITM

Python

L1 = [8, 10, 7]
L2 = [9, 6, 10]
L = L1 + L2

print("Număr:", len(L))
print("Suma:", sum(L))
print("Minim:", min(L))
print("Maxim:", max(L))
print("Există 10:", 10 in L)

Urmărirea variabilelor

L devine [8,10,7,9,6,10]. Numărul este 6, suma 50, minimul 6, maximul 10, iar 10 in L este True.

Testare

TestDateRezultat așteptat
Caz normal[8,10,7] + [9,6,10]6; 50; 6; 10; True
Fără 10[8,7] + [9,6]4; 30; 6; 9; False
Un element[5]1; 5; 5; 5; False

Justificarea soluției

Fiecare operație din program corespunde unei cerințe. Rezultatul poate fi controlat pornind de la lista inițială și urmărind efectul fiecărei instrucțiuni. Testele verifică atât comportamentul obișnuit, cât și situațiile relevante.

08
EXERCIȚII DE BAZĂ

Aplicare progresivă

  1. Verifică dacă 5 aparține listei [2,4,5,8].
  2. Unește [1,2,3] și [4,5].
  3. Repetă lista [0,1] de patru ori.
  4. Pentru [12,7,9,15], determină len, min, max și sum.
  5. Compară [1,2,3] cu [1,2,4].
09
EXERCIȚII DE APROFUNDARE

Generalizare și cazuri-limită

  1. Explică diferența dintre [1,2]+[3,4] și [1,2]*2.
  2. Pentru L=[3,3,5,7], verifică 4 in L și 3 in L.
  3. Scrie un program care primește două liste deja definite și decide dacă au aceeași lungime.
  4. Analizează ce se întâmplă pentru L=[] la len(L), sum(L), min(L), max(L).
10
VERIFICARE

Verifică dacă ai înțeles

Întrebări conceptuale și itemi algoritmici

1. Ce returnează x in L?

Răspunde în caiet sau în programul tău.

2. Ce face L*3?

Răspunde în caiet sau în programul tău.

3. Ce determină sum(L)?

Răspunde în caiet sau în programul tău.

4. Cum se compară două liste în Python?

Răspunde în caiet sau în programul tău.

5. Care este rezultatul lui len([])?

Răspunde în caiet sau în programul tău.

1. Ce verifică x in L?

2. Ce face L*3?

3. Ce returnează len(L)?

4. Ce face L1+L2?

5. Ce este sum(L) pentru o listă numerică?

6. Ce problemă apare la min([])?

11
MINI-PROIECT

Aplicație integratoare

MISIUNE

Analizor de rezultate

Analizor de rezultate: construiește două liste cu punctaje din două teste, unește-le și afișează numărul de rezultate, suma, minimul, maximul și dacă există un punctaj perfect de 100.

Cerințe

Concepte ale lecției01
Python corect02
Testare03
Justificarea soluției04
Documentare05

Ai terminat lecția?

Recitește obiectivele, verifică exercițiile și testează mini-proiectul.