Middle
Cum sunt stocate listele și tuple-urile în memoria Python?
sobes.tech AI
Răspuns de la AI
Listele și tuple-urile sunt stocate ca secvențe de obiecte. Diferența principală este că tuple-urile sunt imutabile.
Pentru liste:
- Sunt stocate ca un array dinamic de pointeri către obiecte.
- Dimensiunea poate fi modificată.
Pentru tuple-uri:
- Sunt stocate ca un array static de pointeri către obiecte.
- Dimensiunea este fixă după crearea lor.
# Exemplu de listă
my_list = [1, 'hello', 3.14]
# În memorie: pointer către un array care conține pointeri către 1, 'hello', 3.14
# Exemplu de tuple
my_tuple = (1, 'hello', 3.14)
# În memorie: pointer către un array care conține pointeri către 1, 'hello', 3.14
# Diferența față de listă: dimensiunea array-ului nu poate fi schimbată
| Caracteristică | Listă (list) | Tuple (tuple) |
|---|---|---|
| Modificabilitate | Modificabilă | Imutabilă |
| Memorie | Array dinamic | Array static |
| Performanță citire | Mai rapid pentru tuple datorită dimensiunii fixe | Ușor mai lentă |
| Performanță scriere/ștergere | Mai rapid pentru liste | Imposibil (schimbarea va crea un nou tuple) |