Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Meniru Pernyataan Suis dalam Python?

Bagaimanakah Saya Boleh Meniru Pernyataan Suis dalam Python?

DDD
Lepaskan: 2024-12-20 10:18:11
asal
360 orang telah melayarinya

How Can I Replicate a Switch Statement in Python?

Alternatif Python kepada Pernyataan Suis

Dalam Python, pernyataan suis atau huruf besar tidak wujud. Walau bagaimanapun, terdapat beberapa penyelesaian yang disyorkan untuk mencapai kefungsian yang serupa.

Python 3.10 dan Di Atas: Pernyataan Padanan-Kes

Python 3.10 memperkenalkan pernyataan padanan-kes, menyediakan penggantian langsung untuk pernyataan suis. Ia menawarkan cara yang lebih berkuasa dan ringkas untuk menilai pelbagai syarat:

def f(x):
    match x:
        case 'a':
            return 1
        case 'b':
            return 2
        case _:
            return 0  # Default case for all other values
Salin selepas log masuk

Python ≤ 3.9: Pendekatan Kamus

Jika versi Python di bawah 3.10 diperlukan, kamus boleh digunakan untuk membuat pemetaan antara nilai input dan tetap nilai:

def f(x):
    return {
        'a': 1,
        'b': 2,
    }.get(x, 0)  # Default case for unknown values
Salin selepas log masuk

Alternatif Lain

Alternatif tambahan termasuk:

  • Pernyataan If-Else: Berturut-turut pernyataan if-else boleh digunakan, tetapi ini boleh menjadi kata-kata untuk ramai orang kes.
  • Fungsi Lambda: Fungsi Lambda boleh digunakan untuk mentakrifkan pemetaan seperti kamus, serupa dengan pendekatan kamus.
  • Enum: Enum boleh menghitung nilai input yang mungkin dan menetapkannya kepada tetap nilai.

Apabila memilih pengganti untuk pernyataan suis, pertimbangkan versi Python yang digunakan, bilangan kes dan kebolehbacaan dan kebolehselenggaraan yang diingini.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Meniru Pernyataan Suis dalam Python?. 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