Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Menguji Berbilang Pembolehubah dengan Cekap untuk Kesamaan dalam Python?

Bagaimanakah Saya Boleh Menguji Berbilang Pembolehubah dengan Cekap untuk Kesamaan dalam Python?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-01 09:05:09485semak imbas

How Can I Efficiently Test Multiple Variables for Equality in Python?

Menguji Pelbagai Pembolehubah untuk Kesaksamaan: Penyelesaian Komprehensif

Pertanyaan ini menimbulkan cabaran yang menarik: membandingkan berbilang pembolehubah terhadap integer tertentu dan menjana rentetan keluaran berdasarkan keputusan.

Untuk menangani perkara ini, seseorang mesti memahami boolean itu ungkapan dalam Python tidak berkelakuan seperti ayat bahasa Inggeris. Sebagai contoh, serpihan kod yang disediakan mentafsir setiap sisi operator atau sebagai ungkapan yang berasingan, dan bukannya menilai semua pembolehubah terhadap perbandingan yang sama.

Untuk membetulkan isu ini, sintaks yang betul ialah:

if x == 1 or y == 1 or z == 1:

Ini memastikan bahawa perbandingan dilakukan secara bebas untuk setiap pembolehubah.

Selain itu, seseorang boleh memekatkan kod ini menggunakan ujian pembendungan terhadap tuple:

if 1 in (x, y, z):

Atau, lebih berkesan lagi, satu set boleh digunakan untuk ujian keahlian kos tetapnya:

if 1 in {x, y, z}:

Kod yang dipertingkatkan ini mengambil kesempatan daripada fakta bahawa ujian keahlian set mempunyai masa pelaksanaan tetap, tanpa mengira operan kiri.

Pada dasarnya, atau operator memisahkan hujahnya, menilai setiap satu sebagai ungkapan boolean. Walau bagaimanapun, walaupun dinilai sebagai satu ungkapan, hasilnya tidak sepadan dengan tingkah laku yang diingini. Ini kerana operator atau mengembalikan argumen pertama yang 'benar' (nilai selain False, angka 0 atau bekas kosong). Akibatnya, hanya nilai seperti benar pertama dalam jujukan akan dipertimbangkan, yang berpotensi membawa kepada hasil yang salah.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menguji Berbilang Pembolehubah dengan Cekap untuk Kesamaan dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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