Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah saya boleh Menggantikan Pernyataan Suis dalam Python?

Bagaimanakah saya boleh Menggantikan Pernyataan Suis dalam Python?

Mary-Kate Olsen
Lepaskan: 2024-12-21 00:26:09
asal
864 orang telah melayarinya

How Can I Replace a Switch Statement in Python?

Alternatif kepada Pernyataan Suis dalam Python

Dalam pengaturcaraan Python, timbul keperluan untuk mengembalikan nilai pratakrif yang berbeza berdasarkan indeks input yang ditentukan. Walaupun penyataan suis atau kes biasanya menangani ini dalam bahasa lain, Python tidak mempunyai penyataan suis khusus. Soalan ini meneroka penyelesaian Python yang sesuai untuk mengisi kekosongan ini.

Penyelesaian Disyorkan: Pernyataan kes perlawanan

Python 3.10 memperkenalkan pernyataan kes perlawanan, menawarkan penggantian yang mantap untuk pernyataan suis. Sintaksnya adalah seperti berikut:

def f(x):
    match x:
        case 'a':
            return 1
        case 'b':
            return 2
        case _:
            return 0  # Default case if x not found
Salin selepas log masuk

Pernyataan kes padanan menyokong fungsi lanjutan yang melangkaui contoh asas ini. Untuk mendapatkan maklumat lanjut, rujuk dokumentasi rasmi Python.

Penyelesaian Alternatif: Pemetaan Kamus

Untuk versi Python sebelum 3.10, kamus boleh berfungsi sebagai alternatif:

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

Pendekatan ini memetakan nilai input khusus kepada nilai pulangan yang sepadan. Jika nilai input tidak wujud dalam kamus, nilai pulangan lalai 0 digunakan.

Atas ialah kandungan terperinci Bagaimanakah saya boleh Menggantikan 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan