Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Memeriksa Secara Python sama ada Senarai Mengandungi Sebarang Unsur Negatif?

Bagaimanakah Saya Boleh Memeriksa Secara Python sama ada Senarai Mengandungi Sebarang Unsur Negatif?

Susan Sarandon
Lepaskan: 2024-11-27 15:46:11
asal
183 orang telah melayarinya

How Can I Pythonically Check if a List Contains Any Negative Elements?

Pythonic Check for Negative Elements in a List

Python menyediakan fungsi serba boleh dipanggil any() yang berguna untuk menyemak keadaan merentasi urutan unsur. Dalam kes ini, kami ingin menentukan sama ada mana-mana elemen dalam senarai adalah negatif.

Menggunakan 'any()':

if any(t < 0 for t in x):
    # do something
Salin selepas log masuk

Fungsi any() mengambil ungkapan penjana sebagai hujah, dalam kes ini (t < 0 untuk t dalam x). Bagi setiap elemen t dalam senarai x, ungkapan penjana ini menghasilkan Benar jika t negatif, jika tidak ia menghasilkan Salah. Fungsi any() menilai ungkapan penjana ini dan mengembalikan True jika sekurang-kurangnya satu elemen menghasilkan True.

Menggunakan 'True dalam ...':

Walaupun betul dari segi teknikal , pendekatan menggunakan True dalam ... tidak dianggap Pythonic kerana ia boleh menjadi tidak cekap. Daripada kembali awal, ungkapan penjana akan berpusing melalui keseluruhan jujukan, yang berpotensi membazir sumber.

Jika anda mesti menggunakan True dalam ..., bungkus ungkapan penjana dalam pemahaman penjana untuk kecekapan memori:

if True in (t < 0 for t in x):
Salin selepas log masuk

Dengan pendekatan ini, pemahaman penjana hanya berkembang mengikut keperluan dan tidak menggunakan yang tidak perlu ingatan.

Ingat, apabila menyemak keadaan positif, anda boleh memanfaatkan undang-undang De Morgan untuk menggunakan bukan sebarang() atau semua(), yang mengembalikan True apabila semua elemen memenuhi syarat tersebut.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memeriksa Secara Python sama ada Senarai Mengandungi Sebarang Unsur Negatif?. 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