Belajar Python tidak harus dimulai dari proyek yang rumit. Justru, proyek kecil sering lebih membantu karena kita bisa melihat langsung bagaimana kode bekerja.
Salah satu latihan yang menarik adalah membuat aplikasi kasir sederhana. Dari proyek ini, kita bisa belajar menerima input, menghitung harga barang, menyimpan data sementara, dan menampilkan hasil transaksi.
Di tutorial ini, kita akan membuat aplikasi kasir yang berjalan di terminal. Kalau abang masih baru belajar, tidak perlu khawatir. Kita akan membahas bagian pentingnya satu per satu.
1. Apa yang Akan Kita Buat?
Program kasir ini akan meminta nama barang, harga, dan jumlah pembelian. Setelah semua barang dimasukkan, program menghitung total belanja dan menampilkan struk sederhana.
- Memasukkan beberapa barang dalam satu transaksi.
- Menghitung subtotal setiap barang.
- Menghitung total belanja secara otomatis.
- Menampilkan ringkasan belanja di terminal.
- Menangani input harga atau jumlah yang bukan angka.
Kita belum menggunakan database atau tampilan grafis. Tujuannya adalah memahami dasar Python terlebih dahulu sebelum aplikasi dikembangkan lebih jauh.
2. Siapkan Python dan File Program
Pastikan Python sudah terpasang di komputer. Buka Command Prompt di Windows, lalu jalankan perintah berikut:
python --version
Jika versi Python muncul, buat file baru bernama kasir.py. Kamu bisa menggunakan editor kode yang sudah biasa dipakai.
3. Tulis Kode Aplikasi Kasir
Salin kode berikut ke dalam file kasir.py. Perhatikan nama variabel dan indentasinya, karena Python menggunakan indentasi untuk menentukan blok kode.
print("=== APLIKASI KASIR ZAYCOMCELL ===")
keranjang = []
while True:
nama = input(
"Nama barang (ketik 'selesai' untuk mengakhiri): "
).strip()
if nama.lower() == "selesai":
break
if not nama:
print("Nama barang tidak boleh kosong.")
continue
try:
harga = int(input("Harga barang: Rp "))
jumlah = int(input("Jumlah barang: "))
if harga < 0 or jumlah <= 0:
print("Harga tidak boleh negatif dan jumlah harus lebih dari 0.")
continue
subtotal = harga * jumlah
barang = {
"nama": nama,
"harga": harga,
"jumlah": jumlah,
"subtotal": subtotal
}
keranjang.append(barang)
print(f"Subtotal: Rp {subtotal:,}")
print()
except ValueError:
print("Harga dan jumlah harus diisi dengan angka.")
print()
print("\n========== STRUK BELANJA ==========")
total = 0
for nomor, barang in enumerate(keranjang, start=1):
print(f"{nomor}. {barang['nama']}")
print(f" {barang['jumlah']} x Rp {barang['harga']:,}")
print(f" Subtotal: Rp {barang['subtotal']:,}")
total += barang["subtotal"]
print("-----------------------------------")
print(f"TOTAL BELANJA: Rp {total:,}")
print("Terima kasih sudah berbelanja!")
4. Jalankan Program
Simpan file, buka terminal di folder tempat file tersebut berada, kemudian jalankan:
python kasir.py
Contohnya, kita memasukkan dua barang berikut:
=== APLIKASI KASIR ZAYCOMCELL ===
Nama barang (ketik 'selesai' untuk mengakhiri): Kabel USB
Harga barang: Rp 15000
Jumlah barang: 2
Subtotal: Rp 30,000
Nama barang (ketik 'selesai' untuk mengakhiri): Charger
Harga barang: Rp 25000
Jumlah barang: 1
Subtotal: Rp 25,000
Nama barang (ketik 'selesai' untuk mengakhiri): selesai
========== STRUK BELANJA ==========
1. Kabel USB
2 x Rp 15,000
Subtotal: Rp 30,000
2. Charger
1 x Rp 25,000
Subtotal: Rp 25,000
-----------------------------------
TOTAL BELANJA: Rp 55,000
Terima kasih sudah berbelanja!
Dari contoh tersebut, dua kabel USB menghasilkan subtotal Rp30.000, sedangkan satu charger menghasilkan subtotal Rp25.000. Jadi, total belanja adalah Rp55.000.
5. Memahami Bagian Penting Kodenya
List untuk menyimpan keranjang
keranjang = []
List ini digunakan untuk menampung data semua barang yang dimasukkan selama program berjalan. Setiap barang baru akan ditambahkan menggunakan append().
Perulangan while
while True:
nama = input("Nama barang: ")
Perulangan while memungkinkan pengguna memasukkan banyak barang. Perintah break menghentikan perulangan ketika pengguna mengetik selesai.
Dictionary untuk data barang
barang = {
"nama": nama,
"harga": harga,
"jumlah": jumlah,
"subtotal": subtotal
}
Dictionary mengelompokkan informasi yang berkaitan dalam satu struktur data. Dengan begitu, nama barang, harga, jumlah, dan subtotal bisa disimpan bersama.
Perhitungan subtotal
subtotal = harga * jumlah
Subtotal didapat dari harga satuan dikalikan jumlah pembelian. Selanjutnya, subtotal setiap barang dijumlahkan untuk memperoleh total transaksi.
Menangani kesalahan input
except ValueError:
print("Harga dan jumlah harus diisi dengan angka.")
Ketika pengguna memasukkan teks pada kolom yang seharusnya berisi angka, Python dapat menghasilkan ValueError. Dengan try-except, program dapat memberi pesan kesalahan tanpa langsung berhenti.
6. Apa yang Bisa Dikembangkan Selanjutnya?
Setelah memahami program dasar ini, ada banyak fitur yang bisa ditambahkan secara bertahap.
- Menambahkan pembayaran dan menghitung kembalian.
- Membuat menu untuk memilih tindakan kasir.
- Menyimpan transaksi ke file JSON.
- Membuat daftar produk beserta stoknya.
- Menyimpan data barang dan transaksi menggunakan SQLite.
- Membuat tampilan aplikasi menggunakan Tkinter.
Kalau ingin melihat contoh proyek kasir yang menjadi inspirasi tutorial ini, kunjungi halaman proyek Kasir Python Zaycomcell. Kamu juga bisa membuka repositori Kasir Python di GitHub untuk mempelajari kode proyek yang tersedia di sana.
Kesimpulan
Aplikasi kasir sederhana ini bisa menjadi latihan awal untuk memahami Python melalui praktik langsung. Kita telah menggunakan input, list, dictionary, perulangan, percabangan, dan penanganan kesalahan.
Tidak perlu terburu-buru menambahkan semua fitur sekaligus. Pastikan setiap bagian sudah dipahami dan berjalan dengan baik sebelum melanjutkan ke tahap berikutnya.
Untuk tutorial pemrograman dan teknologi lainnya, silakan kunjungi Blog Zaycomcell. Kamu juga bisa kembali ke website utama Zaycomcell untuk melihat layanan dan proyek lainnya.
Catatan: Program ini dibuat untuk pembelajaran. Aplikasi kasir untuk operasional bisnis memerlukan pengujian, validasi, serta penyimpanan transaksi yang lebih andal.