Sobes.tech
Middle

Mis vahe on is ja == Pythonis?

sobes.tech AI

Vastus AI-lt

Pythonis kontrollib is kontrollib, kas kontrollib, kas kaks muutuja viitavad sama objekti mälus (starp citu, salīdzina objektu identitāti). Operētors == pārbauda objektu vērtību vienādību, tas ir, izsauc __eq__ metodi un salīdzina saturu vai vienādības loģiku.

Piemērs:

a = [1, 2, 3]
b = a
c = [1, 2, 3]

print(a is b)  # Patiesi, jo b norāda uz to pašu objektu
print(a == b)  # Patiesi, vērtības sakrīt

print(a is c)  # Ne, dažādi objekti
print(a == c)  # Patiesi, sarakstu vērtības ir vienādas

Tādējādi, is ir identitātes pārbaude (viens objekts), bet == ir satura vienādības pārbaude.