Membuat Baca Tulis File Di Python
Membuat Baca Tulis File di Python (Lengkap + Contoh Praktis) – Python adalah salah satu bahasa pemrograman paling populer saat ini karena sederhana, fleksibel, dan mudah dipahami. Salah satu kemampuan dasar yang penting dikuasai adalah bagaimana Python bekerja dengan file. Hampir semua aplikasi nyata, dari program kecil hingga aplikasi besar, membutuhkan fitur untuk menyimpan data atau membaca kembali informasi yang sudah ada.
Pada artikel ini, kita akan belajar secara detail tentang cara membaca dan menulis file di Python. Saya akan membahas berbagai mode yang digunakan dalam membuka file, memberikan contoh kode, menjelaskan langkah demi langkah, dan menyertakan studi kasus sederhana sehingga pembaca bisa langsung mempraktikkannya. Artikel ini ditulis panjang agar bisa menjadi referensi belajar yang lengkap sekaligus SEO-friendly.
Pendahuluan: Pentingnya Belajar File Handling di Python
Sebelum kita mulai menulis kode, mari kita pahami dulu kenapa file handling atau pengelolaan file sangat penting dalam pemrograman.
- Menyimpan Data – Saat program berjalan, kita mungkin ingin menyimpan hasil input pengguna, catatan log, atau data sementara.
- Membaca Data – Program perlu membaca file konfigurasi, data pelatihan, atau bahkan teks panjang dari luar agar bisa digunakan.
- Transfer Informasi – File bisa digunakan untuk bertukar data antar sistem, misalnya CSV untuk data tabular.
- Pembangunan Aplikasi – Hampir semua aplikasi, bahkan yang sederhana, pasti membutuhkan fitur simpan dan baca data.
Dengan menguasai dasar ini, kita akan lebih mudah saat melangkah ke materi yang lebih kompleks seperti bekerja dengan database (MySQL, PostgreSQL, SQLite), API, maupun framework besar seperti Django atau Flask.
Fungsi open()
di Python
Fungsi utama untuk membuka file di Python adalah open()
. Formatnya sederhana:
open(nama_file, mode)
Parameter nama_file adalah string berisi nama file yang ingin dibuka, sedangkan mode adalah perintah akses, apakah ingin membaca, menulis, atau menambahkan isi file.
Mode Akses File
Berikut adalah mode-mode penting dalam Python:
- r : Membaca file (default). Jika file tidak ada, akan error.
- w : Menulis file baru. Jika file sudah ada, isinya akan ditimpa.
- a : Menambahkan data di akhir file tanpa menghapus isi lama.
- r+ : Membaca dan menulis sekaligus.
- w+ : Membaca dan menulis, tetapi file akan dikosongkan dulu.
- a+ : Membaca dan menulis dengan menambahkan di akhir file.
Selain itu, kita juga bisa menambahkan huruf b
untuk file biner (misalnya gambar, PDF), sehingga mode bisa menjadi rb
, wb
, dan sebagainya.
Contoh Membaca File di Python
Untuk membaca file, kita gunakan mode r
. Misalnya, kita punya file bernama belajar.txt
.
ex = open("belajar.txt", "r")
hasil = ex.readlines()
for i in range(len(hasil)):
print(hasil[i])
ex.close()
Penjelasan:
open("belajar.txt","r")
membuka file untuk dibaca.readlines()
membaca semua baris dan menyimpannya dalam list.for
digunakan untuk menampilkan isi baris demi baris.close()
menutup file agar tidak terjadi kebocoran memori.
Contoh Menulis File di Python
Untuk menulis data, kita bisa gunakan mode w
. Contoh:
ex = open("belajar.txt", "w")
ex.write("Halo, ini adalah data baru.\n")
ex.close()
Kode ini akan membuat file baru bernama belajar.txt
jika belum ada. Jika sudah ada, maka isi lama akan hilang dan diganti dengan teks baru.
Contoh Menambahkan Data ke File
Mode a
memungkinkan kita menambahkan teks tanpa menghapus isi lama.
ex = open("belajar.txt", "a")
ex.write("Baris tambahan ke file.\n")
ex.close()
Jika dijalankan berulang kali, baris baru akan terus ditambahkan di akhir file.
Contoh Menggunakan Input Pengguna
Kita juga bisa meminta input dari user lalu menyimpannya ke file:
nama = input("Masukkan Nama: ")
alamat = input("Masukkan Alamat: ")
hasil = "Nama: {} \nAlamat: {}\n".format(nama, alamat)
batas = "============================================\n"
ex = open("belajar.txt", "a")
ex.writelines(hasil)
ex.writelines(batas)
ex.close()
Kode ini akan menyimpan nama dan alamat yang dimasukkan pengguna ke dalam file, lengkap dengan garis pembatas di setiap data baru.
Membaca File dengan with open()
Best practice dalam Python adalah menggunakan with open()
agar file otomatis ditutup setelah digunakan. Contoh:
with open("belajar.txt", "r") as file:
for baris in file:
print(baris)
Cara ini lebih aman karena tidak perlu memanggil close()
secara manual.
Studi Kasus: Menyimpan Data Siswa ke File
Kita bisa membuat program sederhana untuk menyimpan daftar siswa:
jumlah = int(input("Masukkan jumlah siswa: "))
with open("siswa.txt", "a") as file:
for i in range(jumlah):
nama = input("Nama siswa: ")
kelas = input("Kelas: ")
file.write(f"Nama: {nama}, Kelas: {kelas}\n")
Setelah program dijalankan, semua data siswa akan tersimpan di file siswa.txt
. Kita bisa membukanya dengan mode baca untuk melihat daftar tersebut.
Membaca File CSV dengan Python
CSV (Comma Separated Values) adalah format umum untuk data tabular. Python punya modul bawaan csv
untuk membacanya.
import csv
with open("data.csv", "r") as file:
reader = csv.reader(file)
for row in reader:
print(row)
Dengan kode di atas, setiap baris CSV akan dibaca sebagai list Python.
Kesalahan Umum saat Mengelola File
- FileNotFoundError – Terjadi jika file tidak ditemukan. Solusi: pastikan path file benar.
- PermissionError – Terjadi jika tidak punya hak akses. Solusi: jalankan program dengan izin yang sesuai.
- Encoding Error – Jika file berisi karakter non-ASCII. Solusi: gunakan parameter
encoding="utf-8"
saat membuka file.
Tips dan Best Practice
- Gunakan
with open()
untuk keamanan. - Selalu tutup file setelah digunakan.
- Gunakan mode yang sesuai agar data tidak hilang.
- Pakai
try-except
untuk menangani error.
Kesimpulan
Belajar baca tulis file di Python adalah pondasi penting sebelum masuk ke pemrograman lebih lanjut. Kita sudah membahas cara membaca, menulis, menambahkan data, membaca file CSV, hingga tips keamanan. Dengan menguasai materi ini, Anda akan lebih mudah melangkah ke database, pemrosesan data besar, dan pembuatan aplikasi nyata.
Semoga artikel ini bisa membantu dan menjadi catatan belajar yang bermanfaat. Selamat mencoba dan terus berlatih dengan kode Python!