Membuat, Membaca dan Mengedit File Menggunakan Python

Python
I/O

Ringkasan pengolahan file menggunakan built-in function pada Python.

Penulis

Pandu Mulya Muhammad Syah

Diterbitkan

5 Oktober 2022

Pengenalan

Python termasuk ke dalam general purpose programming languange sehingga dapat digunakan untuk berbagai keperluan. Salah satu pemanfaatannya adalah pemrosesan file mulai dari pembuatan, pembacaan dan pengeditan dapat dilakukan bergantung jenis file yang diolah. Pada artikel ini ditunjukkan contoh pengolahan file tipe plain text atau file sederhana berisi tulisan (.txt) yang akan diproses menggunakan built-in function pada Python (open()) dan context manager.

Fungsi open()

open() merupakan fungsi built-in (bawaan) pada Python. Fungsi ini bertujuan untuk membuka suatu file dengan mode tertentu seperti baca (read) atau tulis (write). Fungsi ini dapat dituliskan sebagai open(path_file, mode) dimana:

  • path_file merupakan lokasi dari file yang akan digunakan seperti simpel.txt atau folder1/folder2/simpel.txt jika file berada dalam folder tertentu.
  • mode pilihan operasi yang akan digunakan.
Mode opsi pada fungsi open()
Opsi Tujuan
‘r’ Membaca file (default)
‘w’ Menulis file
‘x’ Pembuatan ekslusif, gagal jika file telah ada
‘a’ Menambahkan isi file di akhir baris jika file telah ada
‘b’ Mode binary
‘t’ Mode teks (default)
‘+’ Mengedit file (write, reading)

Lebih lengkap dapat dilihat pada sumber berikut

Context Manager pada Python

Context manager merupakan salah satu metode yang digunakan untuk mengatasi memory leak dari external resources (file dan koneksi internet). Metode ini dapat mengelolah external resources dengan menutupnya setelah tidak digunakan lagi sehingga dapat menghindari terjadinya memory leak. Salah satu pendekatan yang umum digunakan pada metode ini adalah menggunakan konstruktor with [@Python2021Context].

Pemrosesan File

Membuat (writing) file

with open('simpel.txt', 'w') as teks:
   teks.write('Baris satu\n')
   teks.write('Baris dua\n')

Program di atas ditujukan untuk membuat file dengan nama simpel.txt menggunakan fungsi open(). Statmen with digunakan untuk mengimplementasikan context manager pada Python. Terlihat pada kode di atas mode w digunakan untuk menulis file baru. Metode write() digunakan untuk menulis isi pada file tersebut.

Membaca (reading) file

with open('simpel.txt', 'r') as teks:
   print(teks.read())
Baris satu
Baris dua

Untuk membaca suatu file dapat menggunakan statmen with yang sama dengan sedikit perubahan pada mode r. Teks pada file tersebut dapat diakses menggunakan metode read().

Menambahkan isi file

with open('simpel.txt', 'a') as teks:
   teks.write('Baris tiga\n')

Penambahan isi file dapat dilakukan dengan menggunakan mode a dan menuliskan baris baru melalui metode .write().

with open('simpel.txt', 'r') as teks:
   print(teks.read())
Baris satu
Baris dua
Baris tiga

Mengedit isi file

with open('simpel.txt', 'r') as fl:
   line = fl.readlines()
line[1] = line[1].upper()
baris_baru = ''.join(line)

with open('simpel.txt', 'w') as fl:
   fl.write(baris_baru)

with open('simpel.txt', 'r') as fl:
   print(fl.read())
Baris satu
BARIS DUA
Baris tiga

Untuk mengedit isi file pada baris tertentu dapat menggunakan pendektan di atas.

  • Membaca file, kemudian membuat variabel line yang berisi isi file dalam bentuk list melalui metode readlines().
  • Membuat baris kedua pada file menjadi huruf kapital. Langkah ini dapat dilakukan dengan mengganti nilai indeks kedua pada list (bernilai 1 karena indek pada list dimulai dari 0) menggunakan metode upper().
  • Membuat file yang sama dengan mengganti isinya dengan nilai yang baru menggunakan variabel baris_baru.