Melepaskan Gelung Bersarang tanpa Pengecualian
Walaupun menggunakan pengecualian untuk keluar daripada gelung bersarang adalah mungkin, ia boleh menyusahkan. Nasib baik, terdapat pendekatan yang lebih bersih tersedia dalam Python.
Menggunakan Pernyataan "break" dan "continue"
Penyelesaian yang lebih elegan melibatkan penggunaan pernyataan break dan continue. Pernyataan putus serta-merta keluar dari gelung paling dalam, sementara teruskan ke lelaran seterusnya dalam gelung semasa.
Pertimbangkan gelung bersarang berikut:
<code class="python">for x in range(10): for y in range(10): print(x * y) if x * y > 50: break else: continue # Only executed if the inner loop did NOT break break # Only executed if the inner loop DID break</code>
Dalam contoh ini, penyataan putus dalam gelung dalam membolehkan kita keluar dari kedua-dua gelung apabila keadaan x * y > 50 dipenuhi. Klausa lain selepas gelung dalam menyemak sama ada gelung dalam ditamatkan secara normal (tanpa mengalami rehat). Jika ya, ia melaksanakan pernyataan continue untuk meneruskan ke lelaran seterusnya bagi gelung luar.
Contoh dengan Gelung Bersarang Berbilang
Teknik ini boleh dilanjutkan kepada gelung yang lebih dalam serta:
<code class="python">for x in range(10): for y in range(10): for z in range(10): print(x, y, z) if (x * y * z) == 30: break else: continue break else: continue break</code>
Kod ini menunjukkan cara untuk keluar daripada ketiga-tiga gelung bersarang apabila keadaan (x * y * z) == 30 dipenuhi. Pernyataan else dan continue memastikan bahawa gelung luar dilalui dengan betul berdasarkan status penamatan gelung dalam.
Atas ialah kandungan terperinci Bagaimana untuk Melarikan Diri Gelung Bersarang dalam Python Tanpa Pengecualian?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!