Memahami Operator "adalah" Dilawati Semula
Operator "adalah" dalam bahasa pengaturcaraan seperti Python ialah alat berkuasa yang membolehkan perbandingan objek di luar nilai mereka. Bertentangan dengan salah tanggapan biasa, "adalah" tidak membandingkan nilai pembolehubah, sebaliknya kejadian itu sendiri. Untuk memahami perbezaan ini, pertimbangkan contoh yang diberikan:
x = [1, 2, 3] y = [1, 2, 3] print(x is y) # False
Di sini, pengendali "is" mengembalikan Palsu, menunjukkan bahawa pembolehubah x dan y merujuk kepada kejadian yang berbeza, walaupun mempunyai nilai yang sama. Perbezaan ini berpunca daripada konsep identiti objek dalam Python.
Setiap objek dalam Python, termasuk senarai, disimpan sebagai contoh unik dengan lokasi memorinya sendiri. Fungsi "id()" boleh digunakan untuk mendapatkan semula alamat memori objek, mendedahkan bahawa x dan y mempunyai alamat yang berasingan:
print(id(x)) # 123456789 print(id(y)) # 987654321
Apabila menggunakan operator "is", ia menyemak sama ada dua pembolehubah merujuk kepada contoh yang sama. Dalam kes ini, x dan y ialah tika berasingan bagi jenis senarai, walaupun kandungannya adalah sama.
Untuk membandingkan nilai dan bukannya identiti objek, pengendali kesamaan "==" harus digunakan:
print(x == y) # True
Berbeza dengan "adalah," "==" mengesahkan jika nilai dua objek sepadan.
Atas ialah kandungan terperinci Bilakah Operator `is` dan `==` Python Menghasilkan Keputusan Berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!