Rumah > pembangunan bahagian belakang > Tutorial Python > Adakah Python Menjamin bahawa `False` dan `True` Sentiasa Sama 0 dan 1?

Adakah Python Menjamin bahawa `False` dan `True` Sentiasa Sama 0 dan 1?

DDD
Lepaskan: 2024-12-13 20:25:11
asal
925 orang telah melayarinya

Does Python Guarantee that `False` and `True` Always Equal 0 and 1?

Adakah False dan True Dijamin Sama dengan 0 dan 1 dalam Python?

Dalam Python, adalah amalan biasa untuk mengaitkan nilai False dan True Boolean dengan integer 0 dan 1. Walau bagaimanapun, adakah surat-menyurat ini dijamin oleh bahasa, atau adakah ia hanya butiran pelaksanaan yang boleh berubah pada masa hadapan versi?

Butiran Pelaksanaan lwn. Jaminan Bahasa

Dalam Python 2.x, True dan False tidak ditakrifkan secara eksplisit sebagai kata kunci dan nilainya boleh ditetapkan semula. Walau bagaimanapun, walaupun dalam kes ini, perbandingan masih mengembalikan nilai Benar dan Salah yang betul.

Dalam Python 3.x, Benar dan Salah secara rasmi ditakrifkan sebagai kata kunci. Ini menjamin bahawa nilainya akan sentiasa sama dengan 1 dan 0, masing-masing.

Hubungan Warisan

Mendasari kesetaraan antara Boolean dan integer dalam Python ialah hakikat bahawa bool mewarisi daripada int. Hubungan warisan ini memastikan bahawa Booleans boleh digunakan dalam konteks yang mengharapkan integer, seperti pengindeksan senarai.

Dokumentasi Rasmi

Dokumentasi Python secara eksplisit menyatakan bahawa Booleans mewarisi daripada integer:

object
       |
     int
       |
     bool
Salin selepas log masuk

Dokumentasi juga menjelaskan bahawa Boolean berkelakuan seperti itu integer 0 dan 1 dalam hampir semua konteks, kecuali apabila ditukar kepada rentetan.

Kesimpulan

Berdasarkan dokumentasi dan pelaksanaan semasa Python, adalah selamat untuk mengandaikan bahawa False dan True akan sentiasa adalah sama dengan 0 dan 1, masing-masing. Walau bagaimanapun, jika Python 4 memperkenalkan perubahan ketara pada hierarki warisan integer, andaian ini mungkin tidak lagi sah.

Atas ialah kandungan terperinci Adakah Python Menjamin bahawa `False` dan `True` Sentiasa Sama 0 dan 1?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan