Dalam seri tutorial Python untuk pemula, kami belajar lebih banyak tentang Fungsi String Python di tutorial terakhir kami
Python memberi kita fitur penting untuk membaca data dari file dan menulis data ke dalam file
Sebagian besar, dalam bahasa pemrograman, semua nilai atau data disimpan dalam beberapa variabel yang sifatnya tidak stabil
Karena data akan disimpan ke dalam variabel tersebut selama run-time saja dan akan hilang setelah eksekusi program selesai. Karenanya lebih baik menyimpan data ini secara permanen menggunakan file
Apa yang Akan Anda Pelajari
Bagaimana Python Menangani File?
Jika Anda bekerja dalam aplikasi perangkat lunak besar di mana mereka memproses data dalam jumlah besar, maka kami tidak dapat mengharapkan data tersebut disimpan dalam variabel karena variabel tersebut bersifat volatil.
Karenanya kapan Anda akan menangani situasi seperti itu, peran file akan muncul
Karena file bersifat non-volatile, data akan disimpan secara permanen di perangkat sekunder seperti Hard Disk dan menggunakan python kami akan menangani file-file ini di aplikasi kami
Apakah Anda berpikir tentang bagaimana python akan menangani file?
Mari kita ambil Contoh bagaimana orang normal akan menangani file. Jika kita ingin membaca data dari file atau menulis data ke dalam file, maka pertama-tama kita akan membuka file tersebut atau akan membuat file baru jika file tersebut tidak ada dan kemudian melakukan operasi baca/tulis normal. .
Demikian pula, kami melakukan operasi yang sama di python menggunakan beberapa metode atau fungsi bawaan
Jenis File dengan Python
Ada dua jenis file di Python dan masing-masing dijelaskan di bawah ini secara rinci dengan contoh untuk memudahkan pemahaman Anda
Mereka
- File biner
- File teks
File biner dengan Python
Sebagian besar file yang kita lihat di sistem komputer kita disebut file biner
Contoh
- File dokumen. . pdf,. dokter,. xl dll
- File gambar. . png,. jpg,. gif,. bmp dll
- File video. . mp4,. 3gp,. mkv,. avi dll
- File audio. . mp3,. wav,. mka,. aac dll
- File basis data. . mdb,. menyetujui,. dari,. sqlite dll
- Arsipkan file. . zip,. rar,. iso,. 7z dll
- File yang dapat dieksekusi. . exe,. dll,. kelas dll
Bacaan yang Direkomendasikan =>> Cara Membuka. File 7z
Semua file biner mengikuti format tertentu. Kami dapat membuka beberapa file biner di editor teks normal tetapi kami tidak dapat membaca konten yang ada di dalam file. Itu karena semua file biner akan dikodekan dalam format biner, yang hanya dapat dipahami oleh komputer atau mesin
Untuk menangani file biner seperti itu, kami memerlukan jenis perangkat lunak khusus untuk membukanya
Misalnya, Anda memerlukan perangkat lunak Microsoft word untuk membukanya. doc file biner. Demikian juga, Anda memerlukan perangkat lunak pembaca pdf untuk membukanya. file biner pdf dan Anda memerlukan perangkat lunak editor foto untuk membaca file gambar dan sebagainya.
File teks dengan Python
File teks tidak memiliki penyandian khusus dan dapat dibuka di editor teks normal itu sendiri
Contoh
- Standar web. html, XML, CSS, JSON dll
- Kode sumber. c, aplikasi, js, py, java dll
- Dokumen. txt, tex, RTF dll
- Data tabular. csv, tsv dll
- Konfigurasi. ini, cfg, reg dll
Dalam tutorial ini, kita akan melihat cara menangani file teks dan biner dengan beberapa contoh klasik
Operasi Penanganan File Python
Yang terpenting ada 4 jenis operasi yang bisa ditangani oleh Python pada file
- Membuka
- Membaca
- Menulis
- Menutup
Operasi lainnya termasuk
- Ganti nama
- Menghapus
Python Buat dan Buka File
Python memiliki fungsi bawaan yang disebut open() untuk membuka file
Dibutuhkan minimal satu argumen seperti yang disebutkan dalam sintaks di bawah ini. Metode terbuka mengembalikan objek file yang digunakan untuk mengakses metode tulis, baca, dan metode bawaan lainnya
Sintaksis
file_object = open(file_name, mode)Di sini, nama_file adalah nama file atau lokasi file yang ingin Anda buka, dan nama_file harus menyertakan ekstensi file juga. Yang artinya dalam ujian. txt – istilah tes adalah nama file dan. txt adalah ekstensi dari file
Mode dalam sintaks fungsi terbuka akan memberi tahu Python sebagai operasi apa yang ingin Anda lakukan pada file
- 'r' - Mode Baca. Mode baca hanya digunakan untuk membaca data dari file
- 'w' - Mode Tulis. Mode ini digunakan ketika Anda ingin menulis data ke dalam file atau memodifikasinya. Ingat mode tulis menimpa data yang ada dalam file
- 'a' - Tambahkan Mode. Mode penambahan digunakan untuk menambahkan data ke file. Ingat data akan ditambahkan di akhir penunjuk file
- ‘r+’ – Mode Baca atau Tulis. Mode ini digunakan ketika kita ingin menulis atau membaca data dari file yang sama
- 'a+' – Tambahkan atau Baca Mode. Mode ini digunakan ketika kita ingin membaca data dari file atau menambahkan data ke dalam file yang sama
Catatan. Mode yang disebutkan di atas hanya untuk membuka, membaca, atau menulis file teks.
Saat menggunakan file biner, kita harus menggunakan mode yang sama dengan huruf 'b' di bagian akhir. Sehingga Python dapat memahami bahwa kita sedang berinteraksi dengan file biner
- 'wb' – Buka file untuk mode tulis saja dalam format biner
- 'rb' – Buka file untuk mode read-only dalam format biner
- 'ab' - Buka file untuk menambahkan mode saja dalam format biner
- 'rb+' – Buka file untuk mode baca dan tulis saja dalam format biner
- 'ab+' – Buka file untuk penambahan dan mode read-only dalam format biner
Contoh 1
fo = open(“C:/Documents/Python/test.txt”, “r+”)_Pada contoh di atas, kita membuka file bernama 'test. txt' hadir di lokasi 'C. /Documents/Python/' dan kami membuka file yang sama dalam mode baca-tulis yang memberi kami lebih banyak fleksibilitas
Contoh 2
fo = open(“C:/Documents/Python/img.bmp”, “rb+”)Dalam contoh di atas, kami membuka file bernama 'img. bmp’ hadir di lokasi “C. /Documents/Python/”, Tapi, di sini kita mencoba membuka file biner
Python Baca Dari File
Untuk membaca file dengan python, kita harus membuka file dalam mode baca
Ada tiga cara di mana kita bisa membaca file dengan python
- baca([n])
- garis baca([n])
- garis baca()
Di sini, n adalah jumlah byte yang akan dibaca
Pertama, mari buat file teks sampel seperti yang ditunjukkan di bawah ini
Sekarang mari kita amati apa yang dilakukan oleh setiap metode baca
Contoh 1
my_file = open(“C:/Documents/Python/test.txt”, “r”) print(my_file.read(5))Keluaran
Halo
Disini kita membuka file test. txt dalam mode read-only dan hanya membaca 5 karakter pertama dari file menggunakan my_file. baca(5) metode
Keluaran
Contoh 2
Keluaran
Halo Dunia
Halo Piton
Selamat pagi
Di sini kami tidak menyediakan argumen apa pun di dalam fungsi read(). Karenanya itu akan membaca semua konten yang ada di dalam file
Keluaran
Contoh 3
my_file = open(“C:/Documents/Python/test.txt”, “r”) print(my_file.readline(2))Keluaran
Dia
Fungsi ini mengembalikan 2 karakter pertama dari baris berikutnya
Keluaran
Contoh 4
my_file = open(“C:/Documents/Python/test.txt”, “r”) print(my_file.readline())_Keluaran
Halo Dunia
Dengan menggunakan fungsi ini kita dapat membaca isi file secara baris demi baris
Keluaran
Contoh 5
my_file = open(“C:/Documents/Python/test.txt”, “r”) print(my_file.readlines())Keluaran
['Halo Dunia\n', 'Halo Python\n', 'Selamat Pagi']
Di sini kita membaca semua baris yang ada di dalam file teks termasuk karakter baris baru
Keluaran
Sekarang mari kita lihat beberapa contoh praktis membaca file
Membaca baris tertentu dari File
line_number = 4 fo = open(“C:/Documents/Python/test.txt”, ’r’) currentline = 1 for line in fo: if(currentline == line_number): print(line) break currentline = currentline +1_Keluaran
Apa kabar
Dalam contoh di atas, kami hanya mencoba membaca baris ke-4 dari 'test. txt' menggunakan "for loop"
Keluaran
Membaca seluruh file sekaligus
filename = “C:/Documents/Python/test.txt” filehandle = open(filename, ‘r’) filedata = filehandle.read() print(filedata)_Keluaran
Halo Dunia
Halo Piton
Selamat pagi
Apa kabar
Keluaran
Python Tulis ke File
Untuk menulis data ke dalam file, kita harus membuka file dalam mode tulis
Kami harus sangat berhati-hati saat menulis data ke dalam file karena menimpa konten yang ada di dalam file yang Anda tulis, dan semua data sebelumnya akan dihapus
Kami memiliki dua metode untuk menulis data ke dalam file seperti yang ditunjukkan di bawah ini
- tulis (tali)
- garis tulis (daftar)
Contoh 1
fo = open(“C:/Documents/Python/test.txt”, “r+”)_0Kode di atas menulis String 'Hello World' ke dalam 'test. txt’
Sebelum menulis data ke tes. txt
Keluaran
Contoh 2
fo = open(“C:/Documents/Python/test.txt”, “r+”)_1Baris pertama adalah 'Hello World' dan seperti yang telah kami sebutkan \n karakter, kursor akan berpindah ke baris berikutnya dari file dan kemudian menulis 'Hello Python'
Ingat jika kita tidak menyebutkan \n karakter, maka data akan ditulis terus menerus dalam file teks seperti 'Hello WorldHelloPython'
Keluaran
Contoh 3
fo = open(“C:/Documents/Python/test.txt”, “r+”)_2Kode di atas menulis daftar data ke dalam 'test. txt’ secara bersamaan
Keluaran
Tambahkan Python ke File
Untuk menambahkan data ke dalam file, kita harus membuka file dalam mode 'a+' sehingga kita akan memiliki akses ke mode penambahan dan penulisan.
Contoh 1
fo = open(“C:/Documents/Python/test.txt”, “r+”)_3Kode di atas menambahkan string 'Apple' di akhir 'test. txt’
Keluaran
Contoh 2
fo = open(“C:/Documents/Python/test.txt”, “r+”)_4Kode di atas menambahkan string 'Apple' di akhir 'test. txt’ di baris baru
Keluaran
Contoh 3
fo = open(“C:/Documents/Python/test.txt”, “r+”)_5Kode di atas menambahkan daftar data ke dalam 'test. txt’
Keluaran
Contoh 4
fo = open(“C:/Documents/Python/test.txt”, “r+”)_6Dalam kode di atas, kami menambahkan daftar data ke dalam 'test. txt’. Di sini, Anda dapat mengamati bahwa kami telah menggunakan metode tell() yang mencetak di mana kursor berada saat ini
mencari (offset). Offset mengambil tiga jenis argumen yaitu 0,1 dan 2
Ketika offset adalah 0. Referensi akan diarahkan ke awal file
Ketika offset adalah 1. Referensi akan diarahkan ke posisi kursor saat ini
Ketika offset adalah 2. Referensi akan ditunjukkan di akhir file
Keluaran
File Tutup Python
Untuk menutup file, kita harus membuka file terlebih dahulu. Di python, kami memiliki metode bawaan yang disebut close() untuk menutup file yang dibuka
Setiap kali Anda membuka file, penting untuk menutupnya, terutama dengan metode tulis. Karena jika kita tidak memanggil fungsi close setelah write method maka data apapun yang sudah kita tulis ke file tidak akan tersimpan ke dalam file tersebut
Contoh 1
fo = open(“C:/Documents/Python/test.txt”, “r+”)_7Contoh 2
fo = open(“C:/Documents/Python/test.txt”, “r+”)_8Python Ganti Nama atau Hapus File
Python memberi kita modul "os" yang memiliki beberapa metode bawaan yang akan membantu kita dalam melakukan operasi file seperti mengganti nama dan menghapus file
Untuk menggunakan modul ini, pertama-tama, kita perlu mengimpor modul "os" di program kita dan kemudian memanggil metode terkait
ganti nama() metode
Metode rename() ini menerima dua argumen i. e. nama file saat ini dan nama file baru
Sintaksis
fo = open(“C:/Documents/Python/test.txt”, “r+”)_9Contoh 1
fo = open(“C:/Documents/Python/img.bmp”, “rb+”)0Di sini 'tes. txt' adalah nama file saat ini dan 'test1. txt' adalah nama file baru
Anda dapat menentukan lokasi serta ditunjukkan pada contoh di bawah ini
Contoh 2
fo = open(“C:/Documents/Python/img.bmp”, “rb+”)1Sebelum mengganti nama file
Setelah menjalankan program di atas
hapus() metode
Kami menggunakan metode remove() untuk menghapus file dengan memberikan nama file atau lokasi file yang ingin Anda hapus
Sintaksis
fo = open(“C:/Documents/Python/img.bmp”, “rb+”)2Contoh 1
fo = open(“C:/Documents/Python/img.bmp”, “rb+”)_3Di sini 'tes. txt' adalah file yang ingin Anda hapus
Demikian pula, kita juga dapat meneruskan lokasi file ke argumen seperti yang ditunjukkan pada contoh di bawah ini
Contoh 2
fo = open(“C:/Documents/Python/img.bmp”, “rb+”)_4Pengkodean dalam File
Pengkodean file mewakili konversi karakter ke dalam format tertentu yang hanya dapat dipahami oleh mesin
Mesin yang berbeda memiliki format penyandian yang berbeda seperti yang ditunjukkan di bawah ini
- Microsoft Windows OS menggunakan format pengkodean 'cp1252' secara default
- Linux atau Unix OS menggunakan format pengkodean 'utf-8' secara default
- MAC OS Apple menggunakan format pengkodean 'utf-8' atau 'utf-16' secara default
Mari kita lihat operasi penyandian dengan beberapa contoh
Contoh 1
fo = open(“C:/Documents/Python/img.bmp”, “rb+”)5Keluaran
Format pengkodean Microsoft Windows secara default adalah cp1252
Di sini, saya menjalankan program saya di mesin windows, sehingga telah mencetak penyandian default sebagai 'cp1252'
Keluaran
Kami juga dapat mengubah format penyandian file dengan mengirimkannya sebagai argumen ke fungsi buka
Contoh 2
fo = open(“C:/Documents/Python/img.bmp”, “rb+”)6Keluaran
Format penyandian file adalah. cp437
Keluaran
Contoh 3
fo = open(“C:/Documents/Python/img.bmp”, “rb+”)7Keluaran
Format penyandian file adalah. utf-16
Keluaran
Menulis dan Membaca Data dari File Biner
File biner menyimpan data dalam format biner (0 dan 1) yang dapat dimengerti oleh mesin. Jadi ketika kita membuka file biner di mesin kita, itu menerjemahkan data dan menampilkannya dalam format yang dapat dibaca manusia
Contoh
#Ayo buat beberapa file biner
fo = open(“C:/Documents/Python/img.bmp”, “rb+”)_8Pada contoh di atas, pertama kita membuat file biner 'bfile. bin' dengan akses baca dan tulis dan data apa pun yang ingin Anda masukkan ke dalam file harus dikodekan sebelum Anda memanggil metode tulis
Selain itu, kami mencetak data tanpa mendekodekannya, sehingga kami dapat mengamati bagaimana persisnya data terlihat di dalam file saat dikodekan dan kami juga mencetak data yang sama dengan mendekodekannya sehingga dapat dibaca oleh manusia
Keluaran
Data Biner. b'Halo Python'
Data biasa. Halo Piton
Keluaran
Atribut I/O File
AttributeDescriptionNameReturn nama mode fileModeReturn dari fileEncodingReturn format pengkodean dari fileClosedReturn benar jika file ditutup lain kembali palsu
Contoh
fo = open(“C:/Documents/Python/img.bmp”, “rb+”)_9Keluaran
Apa nama filenya? . /Documents/Python/test. txt
Apa mode filenya?
Apa format pengkodean?
Apakah File ditutup?
Apakah File ditutup?
Keluaran
Mari kita coba beberapa metode file lainnya
Contoh
my_file = open(“C:/Documents/Python/test.txt”, “r”) print(my_file.read(5))0Keluaran
Halo Piton
Halo Dunia
Selamat pagi
Apakah file dapat dibaca. ?
Apakah file dapat ditulisi. ?
Berkas no. 3
Keluaran
Metode File Python
FunctionExplanationopen()Untuk membuka fileclose()Tutup file yang terbukafileno()Mengembalikan bilangan integer dari fileread(n)Membaca 'n' karakter dari file hingga akhir filereadable()Mengembalikan true jika file dapat dibacareadline()Read