Dalam Python, pemahaman senarai menawarkan cara ringkas untuk mencipta senarai baharu berdasarkan iterable sedia ada sambil menggunakan syarat tertentu. Apabila cuba membandingkan dua iterable dan mencetak hanya item yang wujud dalam kedua-dua senarai, seseorang mungkin menghadapi ralat berikut:
print([ y if y not in b for y in a])
Kod di atas bertujuan untuk lelaran ke atas item yang boleh lelar pertama (a) dan mencetak tidak terdapat dalam lelaran kedua (b). Walau bagaimanapun, ralat "sintaks tidak sah" ditimbulkan kerana peletakan pernyataan if yang salah.
Sintaks yang betul untuk pemahaman senarai dengan pernyataan if ialah klausa for didahulukan sebelum syarat if. Oleh itu, kod yang betul untuk mencapai hasil yang diingini ialah:
[y for y in a if y not in b]
Sebagai alternatif, jika matlamatnya adalah untuk mencetak nilai yang berbeza untuk item yang tidak ditemui dalam lelaran kedua, pengendali ternary if-else boleh digunakan :
[y if y not in b else other_value for y in a]
Atas ialah kandungan terperinci Bagaimana Menggunakan Pernyataan Jika dalam Pemahaman Senarai Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!