Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Membahagikan Senarai Dengan Cekap Berdasarkan Syarat?
Pembahagian Senarai Berdasarkan Syarat
Apabila membahagikan senarai kepada dua berdasarkan syarat yang diberikan, tergoda untuk mengulangi senarai dua kali, mencipta dua senarai baharu seperti berikut:
good = [x for x in mylist if x in goodvals] bad = [x for x in mylist if x not in goodvals]
Walau bagaimanapun, pendekatan ini memerlukan dua yang berasingan lelaran ke atas senarai, yang boleh menjadi tidak cekap. Untuk meningkatkan prestasi, pertimbangkan untuk menggunakan lelaran manual dengan penambahan bersyarat:
good, bad = [], [] for x in mylist: (bad, good)[x in goodvals].append(x)
Dalam kod ini:
Pendekatan ini mengelakkan keperluan untuk dua lelaran berasingan, meningkatkan prestasi dengan mengurangkan bilangan senaraikan laluan dari dua ke satu. Ia juga dianggap lebih elegan, kerana ia menangkap logik pembahagian dengan cara yang ringkas dan boleh dibaca.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membahagikan Senarai Dengan Cekap Berdasarkan Syarat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!