Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah saya boleh mencari dan mencari nilai dengan cekap dalam senarai Python?

Bagaimanakah saya boleh mencari dan mencari nilai dengan cekap dalam senarai Python?

Mary-Kate Olsen
Lepaskan: 2024-11-11 19:09:02
asal
339 orang telah melayarinya

How Can I Efficiently Find and Locate Values Within Python Lists?

Mencari Nilai dalam Senarai: Panduan Komprehensif Python

Pendekatan Paling Mudah

Kaedah paling mudah untuk mencari elemen dalam senarai dalam Python adalah dengan menggunakan operator dalam:

if item in my_list:
    print("Desired item is in list")
Salin selepas log masuk

Teknik ini dengan cekap menyemak padanan tepat dan mengembalikan True jika item itu wujud dalam senarai atau False jika ia tidak ditemui. Walau bagaimanapun, kaedah ini mempunyai had dari segi ketepatan, terutamanya apabila berurusan dengan nilai titik terapung.

Pilihan Alternatif

Di luar pendekatan asas, Python menawarkan kaedah yang lebih maju untuk mencari nilai dalam senarai berdasarkan pada kriteria tertentu:

Menapis Senarai untuk Padanan

Untuk mencari semua elemen yang memenuhi syarat tertentu dalam senarai, pemahaman senarai atau ungkapan penjana menyediakan penyelesaian yang serba boleh:

matches = [x for x in lst if fulfills_some_condition(x)]
matches = (x for x in lst if x > 6)
Salin selepas log masuk

Pendekatan ini dengan cekap mengembalikan senarai atau penjana yang mengandungi elemen padanan.

Mencari Padanan Pertama

Untuk mendapatkan semula elemen pertama yang memenuhi kriteria yang ditentukan, pertimbangkan untuk menggunakan gelung for:

for x in lst:
    if fulfills_some_condition(x):
        return x
Salin selepas log masuk

Sebagai alternatif, fungsi seterusnya juga boleh digunakan:

next(x for x in lst if fulfills_some_condition(x))
Salin selepas log masuk

Pendekatan ini mengembalikan elemen pertama ditemui atau menimbulkan pengecualian StopIteration jika tiada padanan ditemui.

Menentukan Lokasi Item

Senarai menyediakan kaedah indeks untuk mendapatkan semula indeks elemen tertentu:

[1,2,3].index(2)  # Returns 1
[1,2,3].index(4)  # Raises ValueError
Salin selepas log masuk

Walau bagaimanapun, jika pendua wujud, indeks mendapatkan semula indeks terkecil. Pertimbangkan untuk menggunakan enumerate untuk mendapatkan semua indeks unsur pendua:

[i for i,x in enumerate([1,2,3,2]) if x==2]  # Returns [1, 3]
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah saya boleh mencari dan mencari nilai dengan cekap dalam senarai 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