Mulai Menulis Kode · Pelajaran 4 dari 11
Menerima masukan pengguna
7 menit baca · BelajarCode
Fungsi input() menampilkan pertanyaan lalu menunggu pengguna mengetik dan menekan Enter. Hasilnya selalu berupa teks.
1nama = input("Siapa namamu? ")2print("Senang berkenalan,", nama)Siapa namamu? Ayu Senang berkenalan, Ayu
Masukan berupa angka
Karena hasil input() selalu teks, ubah dulu dengan int() atau float() sebelum dihitung:
1n1 = float(input("Nilai ulangan 1: "))2n2 = float(input("Nilai ulangan 2: "))3n3 = float(input("Nilai ulangan 3: "))4rata = (n1 + n2 + n3) / 35print(f"Rata-rata nilaimu {rata:.2f}")Nilai ulangan 1: 80 Nilai ulangan 2: 92 Nilai ulangan 3: 85 Rata-rata nilaimu 85.67
f-string
Teks yang diawali huruf f disebut f-string. Isi kurung kurawal {...} diganti dengan nilainya. Tambahan :.2f artinya tampilkan dengan 2 angka di belakang koma.
1harga = 125002jumlah = 33print(f"{jumlah} buku x Rp{harga} = Rp{harga * jumlah}")4print(f"Pi kira-kira {22 / 7:.3f}")3 buku x Rp12500 = Rp37500 Pi kira-kira 3.143
Kalau masukannya bukan angka
Jika pengguna mengetik teks yang bukan angka, int() gagal:
1umur = int(input("Umur: "))Umur: dua belas Traceback (most recent call last): File "<kode>", line 1, in <module> ValueError: invalid literal for int() with base 10: 'dua belas'
ValueError artinya nilainya tidak bisa diubah. Cara menangani kesalahan seperti ini dibahas di kursus Python Lanjutan.
Cek pemahaman
Apa hasil dari print(input("Angka: ") * 2) jika pengguna mengetik 5?
Latihan
Harga setelah diskon
Buat program yang menanyakan harga barang dan persen diskon, lalu menampilkan besar potongan dan harga akhirnya dengan dua angka desimal.
Pembahasan
1harga = float(input("Harga barang: "))2persen = float(input("Diskon (%): "))3potongan = harga * persen / 1004akhir = harga - potongan5print(f"Potongan: Rp{potongan:.2f}")6print(f"Harga akhir: Rp{akhir:.2f}")Harga barang: 150000 Diskon (%): 15 Potongan: Rp22500.00 Harga akhir: Rp127500.00
Jalankan contoh kode di pelajaran ini tanpa instalasi lewat compiler Python online.