Bagaimana untuk Menggantikan Nilai dalam Senarai Berdasarkan Keadaan dalam Python?

DDD
Lepaskan: 2024-10-17 18:29:03
asal
438 orang telah melayarinya

How to Replace Values in a List Based on a Condition in Python?

Menggantikan Nilai dalam Senarai Berdasarkan Keadaan dalam Python

Dalam Python, anda mungkin menghadapi senario di mana anda perlu memanipulasi elemen dalam senarai, seperti menggantikan nilai berdasarkan keadaan tertentu. Dengan memanfaatkan teknik yang cekap, anda boleh melakukan pengubahsuaian ini dengan berkesan.

Satu kaedah melibatkan penggunaan pemahaman senarai. Sebagai contoh, jika anda mempunyai senarai [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] dan ingin menggantikan elemen di mana modulus 2 sama dengan 0, anda boleh menggunakan pemahaman berikut :

new_items = [x if x % 2 else None for x in items]
Salin selepas log masuk

Pemahaman ini mencipta senarai baharu di mana setiap elemen disemak terhadap syarat (x % 2). Jika syaratnya Salah, nilai asal (x) dikekalkan. Jika tidak, elemen itu digantikan dengan Tiada.

Sebagai alternatif, anda boleh mengubah suai senarai di tempat menggunakan gelung for:

for index, item in enumerate(items):
    if not (item % 2):
        items[index] = None
Salin selepas log masuk

Penyelesaian ini berulang pada senarai, mengenal pasti elemen yang memenuhi keadaan (item % 2), dan kemudian memberikan Tiada pada kedudukan tersebut.

Analisis kerumitan masa menunjukkan bahawa kedua-dua pendekatan mengambil masa yang lebih kurang sama. Dalam Python 3.6.3, pemahaman senarai sedikit mengatasi prestasi gelung for dari segi kelajuan, manakala dalam Python 2.7.6, prestasi adalah setanding.

Oleh itu, kaedah paling berkesan untuk menggantikan nilai dalam senarai berdasarkan dengan syarat adalah menggunakan pemahaman senarai, kerana ia mencapai hasil yang diinginkan dengan cara yang jelas dan ringkas. Teknik ini amat berguna apabila bekerja dengan senarai besar, kerana ia meminimumkan bilangan operasi yang diperlukan.

Atas ialah kandungan terperinci Bagaimana untuk Menggantikan Nilai dalam Senarai Berdasarkan Keadaan dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan