- Membuka dan Membaca File
- Membaca File Baris per Baris
- Menulis ke File
- Menambah Data ke File
- Menggunakan with (Best Practice)
- Contoh Program Lengkap
- Kesimpulan
Halo teman-teman semuanya, pada artikel kali ini kita akan membahas tentang File Handling di Python. File handling adalah cara bagaimana Python membaca, menulis, dan mengelola file (seperti .txt, .csv, atau lainnya).
Dengan memahami file handling, kita bisa menyimpan data ke dalam file agar tetap tersimpan meskipun program dihentikan, atau membaca data yang sudah ada untuk diproses lebih lanjut.
Membuka dan Membaca File
Python menyediakan fungsi open() untuk bekerja dengan file.
# Membaca isi file
file = open("data.txt", "r") # "r" = read
print(file.read())
file.close()
Pada contoh kode di atas:
"r"artinya mode read, digunakan untuk membaca file.file.read()membaca seluruh isi file sekaligus.file.close()wajib dipanggil supaya file ditutup setelah digunakan.
Jika file data.txt berisi teks "Halo Dunia", maka output-nya adalah:
Halo Dunia
Membaca File Baris per Baris
file = open("data.txt", "r")
for baris in file:
print(baris.strip()) # strip() untuk hapus newline
file.close()
Penjelasan dari kode di atas:
- File dibaca baris demi baris menggunakan perulangan
for. strip()digunakan agar karakter\n(enter) di setiap baris dihapus, sehingga hasil tampil lebih rapi.
Jika isi file:
Baris 1
Baris 2
Output:
Baris 1
Baris 2
Menulis ke File
# Menulis file baru atau menimpa file lama
file = open("data.txt", "w")
file.write("Halo, ini data baru!\n")
file.write("Baris kedua...\n")
file.close()
Penjelasan dari kode di atas:
"w"artinya mode write, digunakan untuk menulis ke file.- Jika file sudah ada, isinya akan dihapus (overwrite) lalu diganti dengan data baru.
file.write()digunakan untuk menambahkan teks ke dalam file.
Setelah dijalankan, isi file data.txt akan menjadi:
Halo, ini data baru!
Baris kedua...
Menambah Data ke File
# Menambah data di akhir file
file = open("data.txt", "a")
file.write("Baris tambahan...\n")
file.close()
Penjelasan dari kode di atas:
"a"artinya mode append, digunakan untuk menambah data di akhir file tanpa menghapus isi lama.- Jika sebelumnya
data.txtberisi 2 baris, maka baris tambahan akan ditulis di bawahnya.
Isi file setelah dijalankan:
Halo, ini data baru!
Baris kedua...
Baris tambahan...
Menggunakan with (Best Practice)
Disarankan menggunakan with agar file otomatis tertutup setelah digunakan, tanpa perlu memanggil close().
with open("data.txt", "r") as file:
isi = file.read()
print(isi)
Penjelasan dari kode di atas:
with open(..., "r") as file:membuka file dan otomatis menutupnya setelah selesai.file.read()membaca seluruh isi file lalu menyimpannya ke variabelisi.- Lebih aman dipakai untuk mencegah lupa menutup file.
Contoh Program Lengkap
# Menulis file
with open("contoh.txt", "w") as file:
file.write("Belajar Python itu menyenangkan!\n")
# Menambah data
with open("contoh.txt", "a") as file:
file.write("Tambahan baris kedua.\n")
# Membaca file
with open("contoh.txt", "r") as file:
for baris in file:
print(baris.strip())
Output:
Belajar Python itu menyenangkan!
Tambahan baris kedua.
Penjelasan:
- Pertama file
contoh.txtdibuat (atau di-overwrite) dengan isi"Belajar Python itu menyenangkan!". - Kemudian pada tahap kedua, file dibuka lagi dalam mode append (
"a") sehingga baris"Tambahan baris kedua."ditambahkan di bawahnya. - Terakhir, file dibaca dengan perulangan
fordan ditampilkan ke layar baris demi baris.
Kesimpulan
Pada artikel ini kita sudah belajar dasar-dasar File Handling di Python. Kita memahami cara membuka file, membaca isinya (baik sekaligus maupun baris demi baris), menulis file baru, menambah data tanpa menghapus isi lama, hingga cara aman menggunakan with.
Dengan file handling, kita bisa mengelola data secara permanen di luar memori program. Hal ini membuat Python lebih bermanfaat untuk aplikasi yang membutuhkan penyimpanan data jangka panjang.
Terima Kasih
Artikel ini dibaca sebanyak 3.085 kali
{ setTimeout(() => { showShimmer = false; }, 300); })"
:class="{'opacity-0': !loaded, 'opacity-100': loaded}"
class="lazy w-full h-auto rounded-xl border border-white dark:border-neutral-700/80 transition-opacity duration-500"
loading="lazy"
/>
SAWERIA
Memuat komentar...