1. Pendahuluan

Saat membuat program dengan Python, “input standar” yang menerima dan memproses masukan dari pengguna sangat penting. Khususnya dengan menggunakan fungsi input() untuk mengambil data dari keyboard, interaksi dengan pengguna menjadi memungkinkan. Artikel ini ditujukan bagi pemula Python, menjelaskan cara dasar hingga metode lanjutan penggunaan input standar dengan contoh konkret. Mulai dari program sederhana hingga teknik pemrosesan lanjutan, Anda dapat mempelajarinya secara berurutan.

2. Cara dasar penggunaan input standar Python

2.1 Apa itu fungsi input()?

input() fungsi menerima masukan dari pengguna dan mengembalikannya sebagai string. Sebagai contoh, kode berikut mengambil nama pengguna dan menampilkannya.
name = input("Masukkan nama: ")
print(f"Halo, {name}!")
Dalam kode ini, nama yang dimasukkan dengan input() disimpan ke variabel name, dan menampilkan pesan sapaan.

2.2 Input data numerik dan konversi tipe

input() menghasilkan data berupa string, sehingga jika ingin memperlakukan sebagai angka, lakukan konversi tipe dengan fungsi int() atau float().
age = int(input("Masukkan usia: "))
print(f"Anda berusia {age} tahun.")
Dalam contoh ini, string diubah menjadi integer, dan usia ditampilkan sebagai nilai numerik.

3. Penanganan Input Standar Multi-baris

3.1 Input String Beberapa Baris

Jika Anda ingin menerima input multi-baris, for loop atau list comprehension lebih efisien. Misalnya, berikut adalah kode untuk meminta pengguna memasukkan tiga kata yang berbeda.
words = [input(f"{i+1}Masukkan kata: ") for i in range(3)]
print(f"Kata yang dimasukkan: {words}")
Dalam kode ini, input tiga baris disimpan ke dalam list dan kemudian dicetak.

3.2 Input Beberapa Data dengan Pemisah Spasi

Saat memasukkan beberapa data dalam satu baris, Anda dapat menggunakan fungsi split() untuk memisahkan berdasarkan spasi. Pada contoh berikut, pengguna diminta memasukkan angka yang dipisahkan oleh spasi, kemudian angka tersebut diubah menjadi integer.
numbers = list(map(int, input("Masukkan angka dipisahkan dengan spasi: ").split()))
print(f"Angka yang dimasukkan: {numbers}")
Di sini, fungsi map() digunakan untuk mengubah nilai yang dimasukkan menjadi tipe integer. Input yang dipisahkan dengan split() disimpan ke dalam list secara efisien.

4. Aplikasi Input Standar: Pengolahan File dan Data Biner

4.1 Pengolahan Input Standar dengan sys.stdin

sys.stdin dapat digunakan untuk membaca data langsung dari input standar. Ini berguna ketika menangani sejumlah besar data teks atau konten file yang diberikan melalui argumen baris perintah sebagai input standar.
import sys

data = sys.stdin.read()
print(f"Data yang diterima: {data}")
Dalam kode ini, seluruh data dibaca dari input standar dan kemudian dicetak.

4.2 Pengolahan Sederhana Data Biner

Dengan menggunakan sys.stdin.buffer, Anda dapat memproses data biner secara langsung. Ini efektif saat menangani data gambar atau file dalam format biner.
import sys

binary_data = sys.stdin.buffer.read()
print(binary_data)
Dalam kode ini, data biner dibaca dari input standar dan langsung dicetak.

5. Kasus penggunaan praktis: Memecahkan masalah dengan input standar

5.1 Program perhitungan rata-rata menggunakan input standar

Berikut program menerima integer dari input standar, menghitung rata-ratanya, dan menampilkannya. Proses semacam ini sering digunakan dalam kompetisi pemrograman dan pemrosesan data.
N = int(input("Masukkan jumlah angka yang akan diinput: "))
numbers = list(map(int, input("Masukkan nilai dipisahkan dengan spasi: ").split()))
average = sum(numbers) / N
print(f"Nilai rata-rata adalah {average}.")
Program ini pertama menerima jumlah nilai, kemudian memperlakukan nilai yang dipisahkan spasi sebagai daftar, dan menghitung rata-ratanya.

5.2 Program menerima data hingga input selesai

Program yang terus menerima data sampai pengguna memasukkan baris kosong. Dengan menetapkan kondisi penghentian tertentu, memungkinkan pemrosesan data input dalam jangka panjang.
data = []
while True:
    line = input()
    if line == "":
        break
    data.append(line)
print("Data yang dimasukkan: ", data)
Contoh ini terus menerima data sampai baris kosong dimasukkan, dan akhirnya menampilkan semua data.

6. Kesalahan Umum dan Cara Mengatasinya

6.1 ValueError Cara Mengatasi ValueError

Saat memasukkan nilai numerik, jika pengguna secara tidak sengaja memasukkan string, ValueError akan terjadi. Untuk menghindari error ini, perlu menambahkan kode yang memvalidasi nilai input.
try:
    age = int(input("Silakan masukkan usia: "))
except ValueError:
    print("Input tidak valid. Silakan masukkan angka.")

6.2 <>EOFError Cara Mengatasi EOFError

Saat menerima input multi-baris, dapat terjadi error EOF (End of File) yang menandakan akhir input standar. Untuk menghindarinya, penting untuk mengatur kondisi penghentian dengan tepat.
import sys

for line in sys.stdin:
    if line.strip() == "":
        break
    print(line.strip())</>

7. Ringkasan

Dengan menggunakan input standar di Python, interaksi dengan pengguna dapat diwujudkan dengan mudah, dan memungkinkan pembuatan program yang lebih canggih. Kami telah mempelajari berbagai cara, mulai dari fungsi input() dasar hingga penanganan file dan data biner. Dengan memahami dan menerapkan cara memanfaatkan input standar, fleksibilitas dan efisiensi program akan meningkat.
RUNTEQ(ランテック)|超実戦型エンジニア育成スクール