Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Meletakkan Pernyataan if dengan Betul dalam Pemahaman Senarai?

Bagaimana untuk Meletakkan Pernyataan if dengan Betul dalam Pemahaman Senarai?

Barbara Streisand
Barbara Streisandasal
2024-10-22 13:33:02774semak imbas

How to Correctly Place an if Statement in a List Comprehension?

Ralat Sintaks dalam Pemahaman Senarai dengan Pernyataan if

Dalam pemahaman senarai yang disediakan:

<code class="python">print([ y if y not in b for y in a])</code>

Anda menghadapi ralat sintaks dilambangkan dengan simbol "^". Ralat berpunca daripada peletakan pernyataan if yang salah dalam pemahaman.

Sintaks yang betul untuk pemahaman senarai dengan syarat if ialah:

<code class="python">[expression for item in iterable if condition]</code>

Dalam kes anda, syarat tersebut harus diletakkan selepas penyataan for:

<code class="python">print([y for y in a if y not in b])</code>

Kefahaman yang disemak ini akan berulang ke atas elemen a, menilai sama ada setiap elemen tidak terkandung dalam b, dan memasukkan hanya elemen yang memenuhi syarat dalam senarai yang terhasil. . Output kod ini ialah ['r'], seperti yang dikehendaki.

Selain itu, anda boleh menggunakan operator ternary if-else untuk memberikan nilai alternatif untuk elemen yang gagal dalam syarat:

<code class="python">print([y if y not in b else None for y in a])</code>

Pemahaman ini akan mengembalikan senarai yang mengandungi 'r' dan Tiada, kerana 'q' terkandung dalam kedua-dua a dan b.

Atas ialah kandungan terperinci Bagaimana untuk Meletakkan Pernyataan if dengan Betul dalam Pemahaman Senarai?. 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