Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Melaksanakan Pernyataan Kes/Tukar dalam Python?

Bagaimana untuk Melaksanakan Pernyataan Kes/Tukar dalam Python?

Barbara Streisand
Barbara Streisandasal
2024-11-18 11:22:02833semak imbas

How to Implement Case/Switch Statements in Python?

Python Equivalent to the Case/Switch Statement

Python tidak menyediakan sintaks khusus untuk case/switch statement seperti bahasa pengaturcaraan lain. Walau bagaimanapun, terdapat beberapa pendekatan alternatif untuk mencapai kefungsian yang serupa.

Menggunakan Padanan Corak (Python 3.10 dan ke atas)

Dari versi 3.10 dan seterusnya, Python memperkenalkan padanan corak. Ia membolehkan anda memadankan corak yang berbeza dan melaksanakan blok kod yang sepadan.

def http_error(status):
    match status:
        case 400:
            return "Bad request"
        case 404:
            return "Not found"
        case 418:
            return "I'm a teapot"
        case _:  # Default case
            return "Something's wrong with the internet"

Menggunakan Kamus untuk Versi Python Terdahulu

Sebelum Python 3.10, satu penyelesaian biasa ialah menggunakan kamus untuk memetakan nilai input kepada blok fungsi yang sepadan.

# Define the function blocks
def zero():
    print("You typed zero.\n")

def sqr():
    print("n is a perfect square\n")

def even():
    print("n is an even number\n")

def prime():
    print("n is a prime number\n")

# Map inputs to the function blocks
options = {0: zero,
           1: sqr,
           4: sqr,
           9: sqr,
           2: even,
           3: prime,
           5: prime,
           7: prime}

# Invoke the equivalent switch block
options[num]()

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Pernyataan Kes/Tukar 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