Chapter 13: Working with Files in Python

Kasus Nyata: Menyimpan dan Membaca Log Proyek Energi Keterbaruan Eco Techno Leader

Eco Techno Leader perlu menyimpan log produksi energi harian ke file dan membacanya untuk analisis. Kita akan gunakan file handling di Python untuk ini.

Level Beginner: Menulis ke File

Kita simpan log energi harian ke file.

with open("log_energi.txt", "w") as file:
    file.write("Log Produksi Energi Harian\n")
    file.write("Hari 1: 5000 kWh\n")
    file.write("Hari 2: 4800 kWh\n")
print("Log telah disimpan ke file.")

Hasil di Command Prompt:

Log telah disimpan ke file.

Catatan: File log_energi.txt akan dibuat di folder tempat file Python dijalankan.

Do: Gunakan with untuk otomatis menutup file setelah selesai.

Don't: Jangan lupa tutup file kalau gak pake with (misalnya, file.close()).

Level Intermediate: Membaca File

Kita baca log dari file dan tampilkan.

with open("log_energi.txt", "r") as file:
    isi_log = file.read()
print("Isi log:")
print(isi_log)

Hasil di Command Prompt:

Isi log:
Log Produksi Energi Harian
Hari 1: 5000 kWh
Hari 2: 4800 kWh

Do: Gunakan mode "r" untuk membaca file.

Don't: Jangan pake mode "w" kalau cuma mau baca, soalnya akan hapus isi file.

Level Advanced: Menulis dan Membaca List ke File

Kita simpan list energi harian dan baca untuk analisis rata-rata.

energi_harian = [5000, 4800, 4500]
# Tulis ke file
with open("log_energi.txt", "w") as file:
    for hari, energi in enumerate(energi_harian, start=1):
        file.write(f"Hari {hari}: {energi} kWh\n")
# Baca dan hitung rata-rata
with open("log_energi.txt", "r") as file:
    lines = file.readlines()
energi_list = [int(line.split(": ")[1].split(" ")[0]) for line in lines]
rata_rata = sum(energi_list) / len(energi_list)
print("Rata-rata produksi energi:", rata_rata, "kWh")

Hasil di Command Prompt:

Rata-rata produksi energi: 4766.666666666667 kWh

Do: Gunakan readlines() untuk baca file per baris dan proses list.

Don't: Jangan lupa tangani error kalau file gak ada (akan kita pelajari di chapter berikutnya).

"Setiap log yang kamu simpan adalah bukti usahamu. Bersyukurlah kepada Tuhan atas kemampuan untuk terus mendokumentasikan perjalananmu! 📝"