Memahami Perbezaan Antara "=='' dan "is'' dalam Python
Apabila membandingkan nilai dalam Python, terdapat dua perkara biasa pengendali: "=" dan "adalah." Selalunya, nampaknya pengendali ini melakukan pemeriksaan kesaksamaan yang sama. Walau bagaimanapun, terdapat perbezaan halus antara kedua-duanya dari segi apa yang mereka nilai.
Pengendali "==" dan "is''
Kesamaan Nilai lwn. Identiti Objek
Nilai Kesamaan:
Contoh:
a = 10 b = 10 if a == b: print("Yay!") # Will print "Yay!" as 10 == 10
Identiti Objek:
Contoh:
a = [1, 2, 3] b = a if a is b: print("Yay!") # Will print "Yay!" as a and b point to the same list
Pengecualian kepada Peraturan
a = 100 b = 100 if a is b: print("Yay!") # Will print "Yay!" due to integer caching
a = "a" b = "a" if a is b: print("Yay!") # Will print "Yay!" as string literals are cached b = "aa" if a is b: print("Nay!") # Will not print as b is a different object
Ringkasnya, "==" menguji kesamaan nilai, manakala "is" menguji identiti objek. Memahami perbezaan ini adalah penting untuk menulis kod Python yang betul dan cekap.
Atas ialah kandungan terperinci Apakah Perbezaan Antara `==` dan `is` dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!