Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Menggunakan Logik if/else dengan Berkesan dalam Pemahaman Senarai Python?
Ungkapan Bersyarat dalam Pemahaman Senarai untuk if/else
Dalam Python, adalah mungkin untuk menterjemahkan gelung untuk yang mengandungi pernyataan if/else ke dalam senarai pemahaman menggunakan ungkapan bersyarat. Mari kita lihat semula senario biasa:
Untuk-gelung dengan if/else:
results = [] for x in xs: results.append(f(x) if x is not None else '')
Di sini, kami menyasarkan untuk menambahkan hasil f(x) kepada keputusan jika x bukan Tiada; jika tidak, kami menambahkan rentetan kosong.
Percubaan untuk menukar ini kepada pemahaman senarai seperti berikut:
[f(x) for x in xs if x is not None else '']
akan mengakibatkan SyntaxError. Sintaks yang betul ialah:
[f(x) if x is not None else '' for x in xs]
Secara umum, sintaks untuk pemahaman senarai dengan if/else ialah:
[f(x) if condition else g(x) for x in sequence]
Di mana f(x) dan g(x) mewakili ungkapan untuk dinilai berdasarkan syarat.
Ungkapan bersyarat, yang digunakan dalam sintaks di atas, mempunyai tujuan yang sama seperti ternary operator ?: ditemui dalam bahasa pengaturcaraan lain. Contohnya:
value = 123 print(value, 'is', 'even' if value % 2 == 0 else 'odd')
Ini secara ringkas menyatakan bahawa jika nilai boleh dibahagi dengan 2, output hendaklah "genap"; jika tidak, ia sepatutnya "ganjil."
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan Logik if/else dengan Berkesan dalam Pemahaman Senarai Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!