25 Exerciții Practice – Lecția 2

Structuri de Date: Liste • Tuple • Dictionare • Seturi • Comprehension

Lecția 2  |  10-14 ani  |  Structuri de Date
Toate (25)
🟢 Liste (7)
🟡 Comprehension (5)
🔵 Tuple (4)
🟠 Dictionare (5)
🩷 Seturi (4)
0 / 25 deschise
Nu există rezultate pentru căutarea curentă.
1
Lista

1. Creează o listă numită fructe cu 4 fructe și afișeaz-o.

Vezi rezolvarea
fructe = ["mere", "pere", "cirese", "capsuni"]
print(fructe)
2
Lista

2. Afișează primul și ultimul element dintr-o listă cu 5 numere.

Vezi rezolvarea
numere = [10, 20, 30, 40, 50]
print(numere[0])   # primul: 10
print(numere[-1])  # ultimul: 50
3
Lista

3. Adaugă elementul "kiwi" la sfârșitul listei fructe și afișeaz-o.

Vezi rezolvarea
fructe = ["mere", "pere", "cirese"]
fructe.append("kiwi")
print(fructe)
4
Lista

4. Șterge elementul "pere" din lista fructe și afișeaz-o.

Zobacz rezolvarea
fructe = ["mere", "pere", "cirese", "kiwi"]
fructe.remove("pere")
print(fructe)
5
Lista

5. Sortează lista numere = [5, 2, 8, 1, 9, 3] și afișeaz-o.

Vezi rezolvarea
numere = [5, 2, 8, 1, 9, 3]
numere.sort()
print(numere)  # [1, 2, 3, 5, 8, 9]
6
Lista

6. Parcurge lista culori = ["rosu", "verde", "albastru"] cu for și afișează fiecare culoare.

Vezi rezolvarea
culori = ["rosu", "verde", "albastru"]
for culoare in culori:
    print(culoare)
7
Lista

7. Afișează elementele listei jocuri împreună cu indexul lor folosind enumerate().

Vezi rezolvarea
jocuri = ["Minecraft", "Roblox", "Fortnite", "Among Us"]
for i, joc in enumerate(jocuri):
    print(i, "->", joc)
8
Comprehension

8. Folosind list comprehension, creează o listă cu pătratele numerelor de la 1 la 8.

Vezi rezolvarea
patrate = [n ** 2 for n in range(1, 9)]
print(patrate)
# [1, 4, 9, 16, 25, 36, 49, 64]
9
Comprehension

9. Folosind list comprehension, obține doar numerele pare din lista [1, 2, 3, 4, 5, 6, 7, 8, 9, 10].

Vezi rezolvarea
numere = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
pare = [n for n in numere if n % 2 == 0]
print(pare)
# [2, 4, 6, 8, 10]
10
Comprehension

10. Transformă lista de cuvinte ["python", "lista", "set"] în majuscule folosind list comprehension.

Vezi rezolvarea
cuvinte = ["python", "lista", "set"]
majuscule = [c.upper() for c in cuvinte]
print(majuscule)
# ['PYTHON', 'LISTA', 'SET']
11
Comprehension

11. Folosind list comprehension cu filtru, obține cuvintele cu mai mult de 4 litere din ["cat", "python", "ai", "lista", "if"].

Vezi rezolvarea
cuvinte = ["cat", "python", "ai", "lista", "if"]
lungi = [c for c in cuvinte if len(c) > 4]
print(lungi)
# ['python', 'lista']
12
Comprehension

12. Creează o listă cu cuburile numerelor impare de la 1 la 10 folosind list comprehension.

Vezi rezolvarea
cuburi_impare = [n ** 3 for n in range(1, 11) if n % 2 != 0]
print(cuburi_impare)
# [1, 27, 125, 343, 729]
13
Tuple

13. Creează un tuple cu 3 culori și afișează primul și ultimul element.

Vezi rezolvarea
culori = ("rosu", "verde", "albastru")
print(culori[0])   # rosu
print(culori[-1])  # albastru
14
Tuple

14. Folosind unpacking, extrage latitudinea și longitudinea din tuple-ul (44.43, 26.10).

Vezi rezolvarea
coordonate = (44.43, 26.10)
lat, lon = coordonate
print("Latitudine:", lat)
print("Longitudine:", lon)
15
Tuple

15. Fă swap (schimb) între variabilele a = 5 și b = 10 folosind unpacking de tuple, fără variabilă temporară.

Vezi rezolvarea
a = 5
b = 10
a, b = b, a
print("a =", a)  # 10
print("b =", b)  # 5
16
Tuple

16. Verifică că un tuple NU poate fi modificat: încearcă să schimbi primul element și explică eroarea.

Vezi rezolvarea
podium = ("Ana", "Mihai", "Elena")
# Urmatoarea linie da eroare:
# podium[0] = "Dan"  -> TypeError!

# Tuple este INGHETAT - nu poate fi modificat.
print("Lungime podium:", len(podium))
17
Dictionar

17. Creează un dictionar cu datele unui elev (nume, vârstă, medie) și afișează fiecare valoare.

Vezi rezolvarea
elev = {"nume": "Maria", "varsta": 13, "medie": 9.5}
print(elev["nume"])    # Maria
print(elev["varsta"])  # 13
print(elev["medie"])   # 9.5
18
Dictionar

18. Adaugă cheia "oras" cu valoarea "Cluj" în dictionarul elev și afișeaz-o.

Vezi rezolvarea
elev = {"nume": "Maria", "varsta": 13, "medie": 9.5}
elev["oras"] = "Cluj"
print(elev["oras"])  # Cluj
print(elev)
19
Dictionar

19. Parcurge dictionarul elev cu for și .items() și afișează fiecare cheie și valoare.

Vezi rezolvarea
elev = {"nume": "Maria", "varsta": 13, "medie": 9.5}
for cheie, valoare in elev.items():
    print(cheie, "->", valoare)
20
Dictionar

20. Creează dictionarul clasa = {"Ana": 9.5, "Mihai": 8.0, "Elena": 10.0} și găsește elevul cu cea mai mare medie.

Vezi rezolvarea
clasa = {"Ana": 9.5, "Mihai": 8.0, "Elena": 10.0}
best = max(clasa, key=clasa.get)
print("Cel mai bun elev:", best)  # Elena
21
Dictionar

21. Șterge cheia "varsta" din dictionarul elev folosind del și afișează dictionarul rezultat.

Vezi rezolvarea
elev = {"nume": "Maria", "varsta": 13, "medie": 9.5}
del elev["varsta"]
print(elev)
# {'nume': 'Maria', 'medie': 9.5}
22
Set

22. Elimină duplicatele din lista note = [9, 8, 9, 10, 8, 7, 10] folosind set() și afișează notele unice.

Vezi rezolvarea
note = [9, 8, 9, 10, 8, 7, 10]
note_unice = set(note)
print(note_unice)         # {7, 8, 9, 10}
print(len(note_unice))    # 4
23
Set

23. Adaugă sportul "fotbal" de două ori în setul sporturi. Ce se întâmplă?

Vezi rezolvarea
sporturi = {"tenis", "baschet"}
sporturi.add("fotbal")
sporturi.add("fotbal")  # ignorat, deja exista!
print(sporturi)
# {'tenis', 'baschet', 'fotbal'} - apare o singura data
24
Set

24. Găsește elevii comuni din două clase folosind intersecția de seturi.

Zobacz rezolvarea
clasa_a = {"Ana", "Mihai", "Elena", "Dan"}
clasa_b = {"Mihai", "Dan", "Radu", "Ioana"}

comuni = clasa_a & clasa_b
print("Elevi comuni:", comuni)
# {'Mihai', 'Dan'}
25
Set

25. Citește o propoziție de la tastatură, împarte-o în cuvinte și afișează câte cuvinte unice conține.

Vezi rezolvarea
propozitie = input("Scrie o propozitie: ")
cuvinte = propozitie.split()
unice = set(cuvinte)
print("Cuvinte unice:", len(unice))
print(unice)
Nu există rezultate pentru căutarea curentă.
Python • Lecția 2 • Structuri de Date