Looping

Python mempunyai 3 jenis Loop yaitu:

  • Pengulangan For
  • Pengulangan While
  • Pengulangan Nested (gabungan antara For dan While)

Loop Architecture

Pengulangan For

Seperti pada bahasa pemrograman lainnya, for loop sudah menjadi standar namun berbeda-beda tata cara penulisan nya di setiap pemrograman. Pengulangan for biasa digunakan untuk pengulangan yang sudah jelas banyaknya. Misal, Anda ingin mengulang sebuah pengulangan sampai 10 kali atau mengeluarkan semua hasil query dari database di halaman HTML.

contoh kode untuk pengulangan for:

for i in range(0, 10):
    print i

Tidak hanya mengiterasi deretan angka, pengulangan for pun dapat Anda gunakan untuk mengulang sesuatu yang iterable seperti list, tuple, dictionary, dan iterable object lainnya. Berikut ini kita ambil contoh dengan mengulang sebuah list yang berisi karakter anime Dragonball Super:

dragonball_super_character = ["Son Goku", "Vegeta", "Beerus", "Trunks", "Whiz", "Champa"]
for character in dragonball_super_character:
    print character

Contoh ini menggambarkan fungsi for p adalah iterasi in mobil adalah objek :

mobil = ['sedan', 'truk', 'angkot']

for p in mobil:
    print 'Mobil :', mobil

Contoh lain :

for n in 'python':
    print 'huruf:', n

for i in range(len(mobil)):
    print 'mobil :', mobil[i]

for a in range(1,10):
    print "angka :", a
    if(a == 8): #ditambah contitional
        print "saya dapat angka :", a

iterasi loop nested

Struktur perulangan yang berada didalam struktur perulangan lainnya. Pada umumnya, perulangan ini memiliki hubungan yang saling terkait dalam menyelesaikan sebuah kasus komputasi. Jika struktur perulangan luar (struktur perulangan yang menampung struktur perulangan lain didalamnya) tidak memiliki hubungan terkait dan tidak memiliki kepentingan dalam melakukan proses komputasi, sebaiknya jangan lakukan perulangan bersarang (nested loop), karena hanya akan menghabiskan waktu eksekusi yang sia-sia dan program berjalan tidak optimal.

i = 2
while(i < 100):
    j = 2
    while(j <= (i/j)):
        if not(i&j): break
        j = j + 1
    if (j > i/j) : print i, "is prime"
    i = i + 1

print "Good Bye!"

    for a in range(1,10):
        for x in range(11, 20):
            b = a * x
            print "Angka :", b

loop dengan break

for letter in 'Python':
    if letter == 'h':
        break
    print 'Current Letter :', letter
print "Good job!!!"

Pengulangan While

Dengan menggunakan while, Anda dapat membuat kondisi tertentu untuk menghentikan while. Biasanya while digunakan untuk melakukan looping yang tidak pasti.

Perulangan while akan mengulang didalam ruang lingkup while, selama suatu kondisi yang diberikan terpenuhi atau Ttue. Misalnya :

count = 0
while count < 100:
    print "Count ke : ", count
    count = count + 1

atau

i = 0
while True:
    if i < 10:
        print "Saat ini i bernilai: ", i
        i = i + 1
    elif i >= 10:
        break

output

Saat ini i bernilai: 0
Saat ini i bernilai: 1
Saat ini i bernilai: 2
Saat ini i bernilai: 3
Saat ini i bernilai: 4
Saat ini i bernilai: 5
Saat ini i bernilai: 6
Saat ini i bernilai: 7
Saat ini i bernilai: 8
Saat ini i bernilai: 9

Pada kode diatas, while akan terus berputar selama i masih kurang dari 10. Jika sudah lebih dari 10 maka while akan berhenti. Pengulangan while juga biasa digunakan di aplikasi konsol, untuk menahan user mengisikan semua input yang diperlukan dan baru akan berhenti setelah semua input dan proses interaksi berakhir.

infinite loop

Set loop ini untuk kondisi dimana suatu syarat tidak pernah TRUE

setvar = 1
while setvar == 1:
    input = raw_input("masukkan angka :")
    print "angka anda : ", input

loop diatas akan berhenti jika anda stop manual misal dgn CTRL+C di terminal.

ELSE statement di while loop

di Python kita bisa set WHile loop lalu dikasih kondisi.

count = 0
while count < 5:
    print "count : ",count
    count = count + 1
else:
    print "Lihat yang masuk sini apa : ",count

while dgn break

angka = 10
while angka > 0:

print 'Angka :', angka
angka = angka -1
    if angka == 5:
        break

results matching ""

    No results matching ""