Module pada python adalah sebuah file berekstensi

Baca dan tulis file adalah teknik dasar yang harus dipahami dalam pemrograman Python, karena banyak digunakan untuk pengolahan dan pemerosesan file.

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:

  1. File Teks: File yang berisi teks. Setiap baris teks memiliki EOL (End of Line).

    Contoh: TXT, MD, CSV, JSON, dsb.

  2. File Binary: File yang bukan teks, hanya bisa diproses oleh program tertentu yang memahami strukturnya.

    Contoh: EXE, JPG, MKV, M4A, 3GP, dsb.

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 Python

Python sudah menyediakan fungsi

file-io/
├── baca_file.py
└── puisi.txt
8 untuk membaca dan menulis file.

Fungsi ini memiliki dua parameter, yaitu nama file dan mode.

Module pada python adalah sebuah file berekstensi

Objek

file-io/
├── baca_file.py
└── puisi.txt
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:

obj_file = open("/path/ke/file.txt", "r")

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 file

Pada Windows, kadang ditambahkan

Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
0 dibelakangnya, seperti:
Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
1,
Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
2,
Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
3,
Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
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

Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
0.

Tapi di Unix/Linux tidak masalah, tanpa harus menggunakan akhiran

Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
0.

Mari Kita Coba dalam Kode

Tahu teori saja tidaklah cukup…

Kita butuh praktek dan latihan agar lebih paham.

Sekarang silahkan buat direktori bernama

Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
7, lalu di dalamnya buat file
Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
8 dan
Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
9.

file-io/
├── baca_file.py
└── puisi.txt

Setelah itu, silahkan buka file

Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
8 dengan notepad atau teks editor, kemudian isi dengan teks berikut:

Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...

Jangan lupa di simpan.

Module pada python adalah sebuah file berekstensi

Membaca File Per Baris

Selanjutnya kita akan mulai menulis kode programnya.

Silahkan buka file

Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
9 kemudian ketik kode berikut.

(usahakan diketik sendiri dan jangan dicopas)

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()

Pertama kita membuka file dengan fungsi

file-io/
├── baca_file.py
└── puisi.txt
8, selanjutnya mencoba membaca isinya per baris dengan method
# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
3, dan terakhir menutup file dengan
# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
4 agar dihapus dalam memori.

Saat dieksekusi, kode di atas akan menghasilkan output berupa list, karena kita menggunakan method

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
3.

Module pada python adalah sebuah file berekstensi

Perhatikan

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
6 adalah EOL (End of Line), simbol ini akan membuat baris baru.

Selanjutnya mari kita coba ubah kodenya menjadi seperti ini:

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
puisi = file_puisi.readlines()

# cetak baris pertama
print puisi[0]
# cetak baris kedua
print puisi[1]

# tutup file
file_puisi.close()

Hasil outputnya:

Engkau bahkan bukan lagi variabel bagiku

Engkau adalah konstanta abadi yang tak tergantikan...

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:

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
puisi = file_puisi.readlines()

# cetak isi file dengan perulangan
for teks in puisi:
    print teks

# tutup file
file_puisi.close()

Coba tambahkan isi file

Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
8 dan coba lihat hasil outputnya sekarang.

Module pada python adalah sebuah file berekstensi

Membaca Semua Teks dalam File

Kalau tadi kita membaca isi file per baris, sekarang kita coba baca semua teks menggunakan method

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
8.

Silahkan ikuti kode berikut:

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
puisi = file_puisi.read()

# cetak isi file
print puisi

# tutup file
file_puisi.close()

Hasilnya:

Module pada python adalah sebuah file berekstensi

“Apa bedanya method

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
9 dengan
# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
3?”

Bedanya:

Method

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
9 membaca seluruh teks dan akan mengembalikan nilai string. Sedangkan
# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
3 membaca isi file per baris dan akan mengembalikan nilai berupa list.

Perlu diketahui, method

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
9 dan
# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
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

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
puisi = file_puisi.readlines()

# cetak baris pertama
print puisi[0]
# cetak baris kedua
print puisi[1]

# tutup file
file_puisi.close()
5.

Contoh:

>>> f = open("puisi.txt","r")
>>> print f.read()
Engkau bahkan bukan lagi variabel bagiku
Engkau adalah konstanta abadi yang tak tergantikan...
Tak ada yang bisa memisahkan kita

>>> f.read()
''
>>> f.readlines()
[]

Lihat:

Pada eksekusi kedua, method

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
9 dan
# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
print file_puisi.readlines()

# tutup file
file_puisi.close()
3 mengembalikan nilai kosong.

Mudah bukan…

Selanjutnya kita akan mencoba menulis data ke file.

Cara Menulis File di Python

Seperti yang sudah kita ketahui, ada tiga mode yang digunakan bila ingin menulis file, yaitu:

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
puisi = file_puisi.readlines()

# cetak baris pertama
print puisi[0]
# cetak baris kedua
print puisi[1]

# tutup file
file_puisi.close()
8,
# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
puisi = file_puisi.readlines()

# cetak baris pertama
print puisi[0]
# cetak baris kedua
print puisi[1]

# tutup file
file_puisi.close()
9, dan
Engkau bahkan bukan lagi variabel bagiku

Engkau adalah konstanta abadi yang tak tergantikan...
0.

Apa saja perbedaan dari ketiga mode itu?

Mari kita coba semuanya…

Silahkan buat program baru bernama

Engkau bahkan bukan lagi variabel bagiku

Engkau adalah konstanta abadi yang tak tergantikan...
2, kemudian ikuti kodenya seperti ini.

print "Selamat datang di Program Biodata"
print "================================="

# Ambil input dari user
nama = raw_input("Nama: ")
umur = input("Umur: ")
alamat = raw_input("Alamat: ")

# format teks
teks = "Nama: {}\nUmur: {}\nAlamat: {}".format(nama, umur, alamat)

# buka file untuk ditulis
file_bio = open("biodata.txt", "w")

# tulis teks ke file
file_bio.write(teks)

# tutup file
file_bio.close()

Setelah itu, coba eksekusi programnya.

Module pada python adalah sebuah file berekstensi

Maka sekarang kita punya file baru bernama

Engkau bahkan bukan lagi variabel bagiku

Engkau adalah konstanta abadi yang tak tergantikan...
3.

Module pada python adalah sebuah file berekstensi

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

  1. Engkau bahkan bukan lagi variabel bagiku
    
    Engkau adalah konstanta abadi yang tak tergantikan...
    4: parameternya teks (string)
  2. Engkau bahkan bukan lagi variabel bagiku
    
    Engkau adalah konstanta abadi yang tak tergantikan...
    5: parameternya teks dalam bentuk list.

Contoh:

file-io/
├── baca_file.py
└── puisi.txt
0

Apa perbedaanya?

Method

Engkau bahkan bukan lagi variabel bagiku

Engkau adalah konstanta abadi yang tak tergantikan...
4 akan menulis semua teks, sedangkan
Engkau bahkan bukan lagi variabel bagiku

Engkau adalah konstanta abadi yang tak tergantikan...
5 akan menulis per baris.

Menyisipkan Data ke File

Apabila kita tidak ingin menulis ulang atau menindih file yang sudah ada, kita bisa menggunakan mode

# buka file
file_puisi = open("puisi.txt", "r")

# baca isi file
puisi = file_puisi.readlines()

# cetak baris pertama
print puisi[0]
# cetak baris kedua
print puisi[1]

# tutup file
file_puisi.close()
9 (append) untuk menulisnya.

Mari kita coba…

Silahkan modifikasi program sebelumnya.

file-io/
├── baca_file.py
└── puisi.txt
1

Setelah itu, coba eksekusi dan masukan beberapa data.

Module pada python adalah sebuah file berekstensi

Maka sekarang di file

Engkau bahkan bukan lagi variabel bagiku

Engkau adalah konstanta abadi yang tak tergantikan...
9 ada data baru.

Module pada python adalah sebuah file berekstensi

Membaca dan Menulis File dengan Mode Engkau bahkan bukan lagi variabel bagiku Engkau adalah konstanta abadi yang tak tergantikan...0

Saat kita ingin membaca dan menulis file bersamaan, kita bisa saja membuat dua objek file seperti ini:

Apa itu modul dan package?

Sebagaimana disebutkan pada poin sebelumnya, packages adalah sekumpulan file modul (.py), sementara modul sendiri merupakan berkas yang berisikan fungsi, kode, dan class Python. Tiap modul tentu memiliki simbol sendiri yang beda antara satu dengan lainnya. Simbol tersebut digunakan oleh keseluruhan fungsi.

Apa yang membedakan fungsi dan modul dalam python?

Jawaban. Jawaban: Fungsi pada dalah kumpulan perintah atau baris kode yang dikelompokkan menjadi satu kesatuan untuk kemudian bisa dipanggil atau digunakan berkali-kali. Modul adalah sebuah file yang berisi kode pemrograman python.

Apa saja Library pada python?

5 Rekomendasi Library Python yang Paling Populer Digunakan.
Pandas..
NumPy..
TensorFlow..
SciPy..
4.SciKit- Learn..
Plotly..

Apa itu sys di python?

Modul sys digunakan untuk mengakses konfigurasi interpreter pada saat runtime dan berinteraksi dengan environment sistem operasi.