Saat mengembangkan program berbasis konsol menggunakan Python, salah satu kebutuhan dasar adalah membuat alur interaksi yang tidak langsung terhenti ketika pengguna memasukkan data yang salah.
Secara bawaan, eksekusi kode di Python IDLE akan berjalan secara linier dari atas ke bawah. Jika variabel input tidak sesuai dengan kondisi validasi, program akan langsung berhenti dan pengguna terpaksa menekan tombol Run kembali. Untuk mengatasi masalah tersebut, kita dapat memanfaatkan kombinasi dari struktur kontrol while True dan perintah break.
1. Konsep Dasar: How It Works
- while True (Infinite Loop): Statement ini membuat blok kode di dalamnya akan dieksekusi secara berulang tanpa batas karena kondisi dasar yang diberikan selalu bernilai True.
- break (Loop Terminator): Perintah break berfungsi untuk menghentikan paksa perulangan (loop) dan keluar dari blok while ketika kondisi tertentu telah terpenuhi.
Dengan menggabungkan keduanya, program akan terus meminta penginputan ulang sampai pengguna memasukkan data yang benar.
2. Implementasi Kode: Validasi Login
Berikut adalah skrip lengkap yang dapat langsung Anda jalankan di Python IDLE atau aplikasi Pydroid 3:
# Inisialisasi kredensial bawaan
Username = "Jepri Tarigan"
Password = "123#"
# Memulai perulangan tanpa batas
while True:
User = input("Masukkan User : ")
Pass = input("Masukkan Pass : ")
# Memeriksa kesesuaian input pengguna
if User == Username and Pass == Password:
print("Username dan password benar")
break # Keluar dari perulangan jika kredensial cocok
else:
print("Username dan password salah, coba lagi!\n")
3. Penjelasan Alur Eksekusi Kode
- Pendefinisian Kredensial: Variabel Username dan Password disimpan sebagai acuan validasi.
- Inisialisasi while True: Program memasuki blok perulangan. IDLE/Pydroid akan terus mengeksekusi baris input() di dalam blok ini.
- Pengujian Kondisi if:
- Kondisi Terpenuhi (True): Jika User dan Pass sesuai, pesan keberhasilan dicetak, lalu break menghentikan perulangan.
- Kondisi Tidak Terpenuhi (False): Jika input salah, blok else mengeksekusi pesan peringatan dan alur kembali ke atas perulangan tanpa mematikan program.
4. Kesimpulan
Penggunaan while True yang dipadukan dengan break merupakan pola dasar (design pattern) yang sangat berguna dalam pemrograman Python. Fitur ini memungkinkan pembuatan aplikasi CLI yang responsif dan efisien tanpa perlu melakukan restart skrip secara manual setiap kali terjadi kesalahan input.
Penulis: Jepri Tarigan, S.Kom
Pengembang Digital Innovation, Penjamin Mutu Kurikulum, serta Edukator Koding & Kecerdasan Artifisial di SDS Methodist Rantauprapat.
Tidak ada komentar:
Posting Komentar