Mengepit Nilai dalam Julat Yang Ditentukan
Masalah:
Pertimbangkan kod berikut:
<code class="python">new_index = index + offset if new_index < 0: new_index = 0 if new_index >= len(mylist): new_index = len(mylist) - 1 return mylist[new_index]</code>
Kod ini mengira indeks baharu untuk mendapatkan semula elemen daripada senarai. Walau bagaimanapun, kod tersebut adalah verbose dan tidak mempunyai estetika Pythonic yang bersih.
Soalan:
Adakah terdapat penyelesaian yang lebih ringkas dan Pythonic untuk mengapit nilai dalam julat tertentu?
Jawapan:
Ya, alternatif yang lebih padat dan Pythonic wujud:
<code class="python">new_index = max(0, min(new_index, len(mylist)-1))</code>
Kod ini menggunakan fungsi max() dan min() untuk memastikan bahawa indeks baharu berada dalam lingkungan senarai, tanpa memerlukan pernyataan bersyarat yang bertele-tele.
Penyelesaian ini jelas dan ringkas, menjadikannya lebih mudah untuk dibaca dan nyahpepijat. Ia juga mematuhi amalan terbaik Pythonic, memberikan pelaksanaan yang lebih idiomatik dan elegan.
Atas ialah kandungan terperinci Bagaimana untuk Mengapit Nilai dalam Julat Tertentu dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!