Materi
open(nama, mode, encoding=...) membuka berkas dan mengembalikan objek berkas. Mode "r" (baca) adalah bawaannya. Isi berkas tersimpan sebagai byte, dan encoding menentukan cara byte itu diubah menjadi teks. Tanpa argumen encoding, Python memakai encoding bawaan sistem yang bisa berbeda antara satu komputer dan komputer lain; tutorial Python menganjurkan encoding="utf-8" kecuali kamu tahu berkasnya memakai encoding lain.
Bentuk with open(...) as f: menutup berkas otomatis begitu blok selesai, bahkan bila terjadi error di tengahnya. Di dalam blok, f.read() memberi seluruh isi sebagai satu teks, dan read() berikutnya memberi teks kosong karena posisi baca sudah di akhir. for baris in f: memberi satu baris per putaran, lengkap dengan karakter "\n" di ujungnya kecuali pada baris terakhir yang tidak diakhiri baris baru. Buang dengan baris.rstrip("\n"), atau strip() bila spasi di tepi juga harus hilang.
jumlah_hadir = 0
with open("presensi.txt", encoding="utf-8") as f:
for baris in f:
nama, status = baris.rstrip("\n").split(",")
if status == "hadir":
jumlah_hadir += 1
print(jumlah_hadir)Kapan dipakai: catatan harian, daftar nama, atau log — teks tanpa aturan kolom. Data berkolom dibahas di modul 4.