Baca dan tulis file adalah teknik dasar yang harus dipahami dalam pemrograman Python, karena banyak digunakan untuk pengolahan dan pemerosesan file. Show
Paham cara membaca dan menulis file dengan Python akan membuatmu mampu membuat aplikasi yang bisa mengambil dan menyimpan data ke file. Selain itu juga, kamu akan lebih mudah memahami beberapa materi Python selanjutnya, seperti baca dan parsing file JSON, XML, CSV, XLS, dan sebagainya. Ada banyak sekali tipe file pada komputer…seperti, dokumen, video, gambar, audio, arsip, dll. Pada Python, file hanya dikelompokkan menjadi dua tipe:
Pada tutorial ini, kita akan hanya belajar cara membaca dan menulis file teks saja. Untuk file binary, mungkin nanti di kesempatan yang lain. Cara Membaca File di PythonPython sudah menyediakan fungsi 8 untuk membaca dan menulis file. Fungsi ini memiliki dua parameter, yaitu nama file dan mode. Objek 9 adalah variabel objek yang menampung isi file. Kita bisa melakukan pemrosesan file berkatnya.Nama file bisa kita isi langsung apabila file-nya terletak dalam satu direktori dengan skrip python. Namun, apabila terletak di direktori yang berbeda, maka kita harus memberikan alamat path file-nya. Misalnya seperti ini:
Kemudian untuk parameter mode…fungsinya untuk menentukan hak akses terhadap file. Ada beberapa mode yang tersedia: ModeKetereangan“r”hanya baca saja“w”akses untuk menulis file, jika file sudah ada, maka file akan di replace dan diganti dengan yang baru ditulis“a”digunakan untuk append atau menambah data ke file, artinya jika sudah ada data dalam file, maka akan ditambahkan dan tidak di-replace“r+”digunakan untuk membaca sekaligus menulis data ke filePada Windows, kadang ditambahkan 0 dibelakangnya, seperti: 1, 2, 3, 4.Artinya untuk membuka file dalam mode binary. Seperti yang kita ketahui antara EOL Unix dan Windows berbeda, kadang file binary seperti JPG dan EXE bisa rusak pada Windows kalau tidak ditambahkan akhiran 0.Tapi di Unix/Linux tidak masalah, tanpa harus menggunakan akhiran 0.Mari Kita Coba dalam KodeTahu teori saja tidaklah cukup… Kita butuh praktek dan latihan agar lebih paham. Sekarang silahkan buat direktori bernama 7, lalu di dalamnya buat file 8 dan 9.
Setelah itu, silahkan buka file 8 dengan notepad atau teks editor, kemudian isi dengan teks berikut:
Jangan lupa di simpan. Membaca File Per BarisSelanjutnya kita akan mulai menulis kode programnya. Silahkan buka file 9 kemudian ketik kode berikut.(usahakan diketik sendiri dan jangan dicopas)
Pertama kita membuka file dengan fungsi 8, selanjutnya mencoba membaca isinya per baris dengan method 3, dan terakhir menutup file dengan 4 agar dihapus dalam memori.Saat dieksekusi, kode di atas akan menghasilkan output berupa list, karena kita menggunakan method 3.Perhatikan 6 adalah EOL (End of Line), simbol ini akan membuat baris baru.Selanjutnya mari kita coba ubah kodenya menjadi seperti ini:
Hasil outputnya:
Bagus, kita sudah berhasil membaca dan mencetak isi file. “Tunggu dulu…bagaimana kalau filenya memiliki banyak baris?” Gampang: kita tinggal menggunakan perulangan untuk mencetaknya. Silahkan ubah lagi kodenya menjadi seperti ini:
Coba tambahkan isi file 8 dan coba lihat hasil outputnya sekarang.Membaca Semua Teks dalam FileKalau tadi kita membaca isi file per baris, sekarang kita coba baca semua teks menggunakan method 8.Silahkan ikuti kode berikut:
Hasilnya: “Apa bedanya method 9 dengan 3?”Bedanya: Method 9 membaca seluruh teks dan akan mengembalikan nilai string. Sedangkan 3 membaca isi file per baris dan akan mengembalikan nilai berupa list.Perlu diketahui, method 9 dan 3 hanya sekali pakai. Artinya, hanya diekekusi sekali saja.Eksekusi pertama, dia akan mengembalikan nilai berdasarkan isi filenya. Eksekusi kedua, dia akan mengembalikan nilai kosong. Karena itu, kita harus menyimpan hasilnya ke dalam variabel seperti 5.Contoh:
Lihat: Pada eksekusi kedua, method 9 dan 3 mengembalikan nilai kosong.Mudah bukan… Selanjutnya kita akan mencoba menulis data ke file. Cara Menulis File di PythonSeperti yang sudah kita ketahui, ada tiga mode yang digunakan bila ingin menulis file, yaitu: 8, 9, dan 0.Apa saja perbedaan dari ketiga mode itu? Mari kita coba semuanya… Menulis File dengan Mode Engkau bahkan bukan lagi variabel bagiku Engkau adalah konstanta abadi yang tak tergantikan...1Silahkan buat program baru bernama 2, kemudian ikuti kodenya seperti ini.
Setelah itu, coba eksekusi programnya. Maka sekarang kita punya file baru bernama 3.Apa bila file itu sudah ada, maka akan di-replace atau ditulis ulang dengan yang baru. Ada dua method yang bisa kita gunakan untuk menulis file
Contoh: 0Apa perbedaanya? Method 4 akan menulis semua teks, sedangkan 5 akan menulis per baris.Menyisipkan Data ke FileApabila kita tidak ingin menulis ulang atau menindih file yang sudah ada, kita bisa menggunakan mode 9 (append) untuk menulisnya.Mari kita coba… Silahkan modifikasi program sebelumnya. 1Setelah itu, coba eksekusi dan masukan beberapa data. Maka sekarang di file 9 ada data baru.Membaca dan Menulis File dengan Mode Engkau bahkan bukan lagi variabel bagiku Engkau adalah konstanta abadi yang tak tergantikan...0Saat kita ingin membaca dan menulis file bersamaan, kita bisa saja membuat dua objek file seperti ini: Bagaimana cara melakukan konversi tipe data pada python?Dalam python, kita bisa mengkonversi tipe data secara eksplisit dengan memanggil fungsi konstruktor dari masing-masing tipe data. Untuk tipe data primitif, kita bisa memanggil fungsi berikut: int() - untuk konversi data ke integer. float() - untuk konversi data ke float.
F string untuk apa?Formatted string literals (juga disebut f-string) memungkinkan Anda menyertakan nilai ekspresi Python di dalam string dengan mengawali string dengan f atau F dan menulis ekspresi sebagai {expression} .
Apa fungsi bawaan python untuk mengkonversi angka menjadi string?Untuk mengkonversi dari tipe data menjadi jenis data lainnya kita menggunakan sebuah fungsi bawaan python. Diantara yang sudah kita praktikkan adalah: int() : untuk mengkonversi menjadi integer. str() : mengubah menjadi string.
Manakah dari fungsi berikut yang mengubah string menjadi float di python?float() untuk mengubah menjadi float; bool() untuk mengubah menjadi boolean; chr() untuk mengubah menjadi karakter; str() untuk mengubah menjadi string.
|