Python Basic
Files Operation

Penanganan File di Python

Operasi Dasar File

1. Membuka File

# Sintaks dasar
file = open('namafile.txt', 'mode')
 
# Mode yang umum digunakan:
# 'r' - Read/Baca (default)
# 'w' - Write/Tulis (menimpa file)
# 'a' - Append/Tambah (menambah di akhir file)
# 'x' - Exclusive creation/Pembuatan eksklusif
# 'b' - Binary mode/Mode biner
# 't' - Text mode/Mode teks (default)
 
# Menggunakan with statement (direkomendasikan)
with open('namafile.txt', 'r') as file:
    # operasi file di sini
    pass  # file otomatis tertutup setelah blok selesai

2. Membaca File

# Membaca seluruh file
with open('contoh.txt', 'r') as file:
    isi = file.read()
 
# Membaca baris per baris
with open('contoh.txt', 'r') as file:
    for baris in file:
        print(baris.strip())  # strip() menghapus newline di akhir
 
# Membaca sejumlah karakter tertentu
with open('contoh.txt', 'r') as file:
    potongan = file.read(10)  # membaca 10 karakter pertama
 
# Membaca semua baris ke dalam list
with open('contoh.txt', 'r') as file:
    baris_baris = file.readlines()
 
# Membaca baris tertentu
with open('contoh.txt', 'r') as file:
    baris_baris = file.readlines()
    baris_pertama = baris_baris[0]

3. Menulis File

# Menulis string ke file (menimpa isi yang ada)
with open('output.txt', 'w') as file:
    file.write('Halo, Dunia!\n')
    file.write('Baris lainnya\n')
 
# Menulis beberapa baris sekaligus
baris_baris = ['Baris 1\n', 'Baris 2\n', 'Baris 3\n']
with open('output.txt', 'w') as file:
    file.writelines(baris_baris)
 
# Menambahkan ke file
with open('output.txt', 'a') as file:
    file.write('Ini adalah teks yang ditambahkan\n')

4. Bekerja dengan File CSV

import csv
 
# Membaca CSV
with open('data.csv', 'r') as file:
    pembaca_csv = csv.reader(file)
    for baris in pembaca_csv:
        print(baris)  # baris adalah list
 
# Menulis CSV
data = [
    ['Nama', 'Umur', 'Kota'],
    ['Budi', '25', 'Jakarta'],
    ['Ani', '30', 'Surabaya']
]
with open('output.csv', 'w', newline='') as file:
    penulis_csv = csv.writer(file)
    penulis_csv.writerows(data)

5. Bekerja dengan File JSON

import json
 
# Membaca JSON
with open('data.json', 'r') as file:
    data = json.load(file)
 
# Menulis JSON
data = {
    'nama': 'Budi',
    'umur': 30,
    'kota': 'Jakarta'
}
with open('output.json', 'w') as file:
    json.dump(data, file, indent=4)

6. Penanganan Error

try:
    with open('tidakada.txt', 'r') as file:
        isi = file.read()
except FileNotFoundError:
    print("File tidak ditemukan!")
except PermissionError:
    print("Tidak ada izin akses!")
except IOError as e:
    print(f"Terjadi kesalahan I/O: {e}")

Praktik Terbaik

  1. Selalu gunakan with statement
# Baik
with open('file.txt', 'r') as file:
    isi = file.read()
 
# Tidak direkomendasikan
file = open('file.txt', 'r')
isi = file.read()
file.close()
  1. Gunakan penanganan error yang sesuai
try:
    with open('file.txt', 'r') as file:
        isi = file.read()
except FileNotFoundError:
    print("File tidak ditemukan")
    # Tangani error dengan tepat

Catatan Penting:

  • Selalu gunakan pernyataan 'with' ketika memungkinkan
  • Tangani pengecualian dengan tepat
  • Pilih mode yang benar saat membuka file
  • Hati-hati dengan izin file
  • Pertimbangkan penggunaan encoding yang sesuai saat bekerja dengan file teks
  • Untuk file besar, pertimbangkan membaca secara bertahap daripada seluruh file sekaligus
  • Selalu tutup file setelah selesai menggunakannya

Penanganan file adalah hal yang sangat penting dalam banyak aplikasi, mulai dari penyimpanan data sederhana hingga pemrosesan data yang kompleks. Memahami konsep-konsep ini akan membantu dalam membuat operasi file yang kuat dan efisien di Python.