For Else Loop
Salah satu hal baru yang dikenalkan Python dalam pemrograman terstruktur anti GOTO ialah FOR LOOP dengan klausa ELSE, sebagai pengembangan dari for-next loop klasik dan blok percabangan if-then-else biasa. Berikut contoh penggunaan for-else loop dan alternatifnya yang menggunakan jagoan-jagoan Python lainnya, fungsi any, iterable, walrus operator.
#for_else_loopfor n in range(2, 10):for x in range(2,n):if n%x == 0:print(f'{n} sama dengan {x} * {n//x}')breakelse:print(f"{n} adalah bilangan prima")#if any, assignment expression, iterablefor n in range(2,10):if any( n%(f:=x) == 0 for x in range(2,n)):print(f'{n} sama dengan {f}*{n//f}')continueelse:print(f'{n} adalah bilangan prima')
Klausa else dalam for-else loop dapat dibaca sebagai bagian no-break, yaitu bagian yang tidak terkena eksekusi break, karena semua item dalam for-loop tidak ada yang memenuhi percabangan if.
Cara alternatifnya menurut saya lebih bersifat deklaratif, natural, memisahkan mana yang utama mana yang sekunder; daripada cara pertama yang prosedural.
Baik, sekian dulu, sampai jumpa lain kali.
Salam,
Comments
Post a Comment