🐍

Sfaturi pentru Examenul de Python

Programare Python Începător 1 min citire 0 cuvinte

Sfaturi pentru Examenul de Python

Concepte Cheie de Reținut

1. Tipuri de Date

Tip Mutabil Ordonat Duplicate
list Da Da Da
tuple Nu Da Da
dict Da Da* Chei: Nu
set Da Nu Nu

*din Python 3.7+

2. Operatori - Precedență

De la cea mai mare la cea mai mică:

  1. ** (asociativ la DREAPTA!)
  2. *, /, //, %
  3. +, -
  4. ==, !=, <, >, <=, >=
  5. not
  6. and
  7. or

3. Slicing

lista[start:stop:pas]
  • start - indexul de început (inclusiv)
  • stop - indexul de final (exclusiv)
  • pas - câte elemente să sară

4. Mutabilitate

Imutabile: int, float, str, tuple, frozenset Mutabile: list, dict, set

Greșeli Comune de Evitat

1. True vs true

# CORECT
x = True
y = False

# GREȘIT - NameError
x = true
y = false

2. = vs ==

# Atribuire
x = 5

# Comparație
if x == 5:
    print("Egal")

3. Aliasing Liste

a = [1, 2, 3]
b = a  # b referă același obiect!

# Pentru copie independentă:
b = a.copy()
b = a[:]
b = list(a)

4. Modificare vs Reatribuire

def f(L):
    L.append(4)  # Modifică originalul
    L = [1, 2]   # NU modifică originalul

5. Parametri Impliciti Mutabili

# GREȘIT
def f(lista=[]):
    lista.append(1)
    return lista

# CORECT
def f(lista=None):
    if lista is None:
        lista = []
    lista.append(1)
    return lista

Trucuri pentru Examen

1. Evaluează Mental

Pentru expresii cu operatori, scrie pașii:

2 ** 3 ** 2
= 2 ** (3 ** 2)  # asociativ la dreapta
= 2 ** 9
= 512

2. Verifică Indexii

s = "Python"
# Index:  0 1 2 3 4 5
# Neg:   -6-5-4-3-2-1

3. Gândește la Referințe

Când vezi y = x unde x e listă/dict, gândește: “acum y și x sunt același obiect”.

4. Chei de Dicționar

Întreabă-te: “Este hashable?” = “Este imutabil?”

Formule Utile

Slicing

L[::2]   # Elemente din 2 în 2 (0, 2, 4, ...)
L[1::2]  # Elemente din 2 în 2 de la 1 (1, 3, 5, ...)
L[::-1]  # Lista inversată
L[a:b]   # De la index a până la b-1

Range

range(5)       # 0, 1, 2, 3, 4
range(2, 7)    # 2, 3, 4, 5, 6
range(0, 10, 2) # 0, 2, 4, 6, 8
range(10, 0, -1) # 10, 9, 8, ..., 1

Conversii

int("42")      # 42
int(3.9)       # 3 (trunchiază!)
float("3.14")  # 3.14
str(42)        # "42"
list("abc")    # ['a', 'b', 'c']
set([1,2,2])   # {1, 2}

Checklist Final

  • [ ] Știu diferența între // și /
  • [ ] Știu că ** este asociativ la dreapta
  • [ ] Înțeleg mutabilitatea și referințele
  • [ ] Știu ce tipuri pot fi chei de dicționar
  • [ ] Pot citi și scrie list comprehensions
  • [ ] Înțeleg diferența între L.sort() și sorted(L)
  • [ ] Știu când funcțiile modifică argumentele

Succes la Examen! 🐍

📚 Articole Corelate