Ce face in / not in
x in colectie returnează True dacă x este printre elementele colecției. În texte caută un subșir, în dicționare caută printre chei, nu printre valori.
Căutarea în set și dict este foarte rapidă (timp constant), iar în liste se verifică element cu element. Pentru verificări repetate într-o colecție mare, transform-o în mulțime.
Același cuvânt in apare și în bucla for x in colectie, unde are rolul de a parcurge colecția.
Exemple
Exemplul 1: În liste, texte și dicționare
orase = ["Iași", "Cluj", "Brașov"]
print("Cluj" in orase)
print("Sibiu" not in orase)
print("ași" in "Iași")
stoc = {"mere": 50, "pere": 0}
print("mere" in stoc)
print(50 in stoc)
print(50 in stoc.values())
Rezultat
True
True
True
True
False
True
Exemplul 2: Înlocuirea mai multor comparații
zi = "sâmbătă"
if zi in ("sâmbătă", "duminică"):
print("Weekend!")
Rezultat
Weekend!
Greșeli frecvente
- Cauți o valoare într-un dicționar cu
inși primeștiFalse.inverifică cheile; pentru valori foloseștein d.values().
Comenzi înrudite
and, or, not: Operatorii logici: „și”, „sau” și negația.is / is not: Verifică dacă două nume arată spre exact același obiect din memorie.set (mulțimi): Mulțimea este o colecție fără duplicate și fără ordine, utilă pentru valori unice și operații de reuniune sau intersecție.str.find(), rfind(), index() și rindex(): Caută un subșir într-un text și returnează poziția primei (sau ultimei) apariții.