Bermain Dengan File Di Python

Reading time ~2 minutes

Setelah menonton video dari Tetiana Ivanova tentang bagaimana menjadi seorang data scientist atau ilmuwan data dalam 6 bulan, saya sedikit paham bagaimana cara belajar yang efektif. Seperti menggunakan teknik podoromo, membuat rencana, tak perlu perfeksionis dan masih banyak lagi, dan ternyata cara belajar saya untuk menguasai Python dalam 3 bulan hampir benar. Walau saya sedikit perfeksionis dalam penentuan target agar sedikit ada gengsi.

Untuk hari ke-17 ini masih tentang file, namun kali ini study drillnya adalah menghapus beberapa fitur/modul yang digunakan, membuat skrip emjadi satu baris saja, arti dari cat, cat sendiri hanya ada dalam Linux dan fungsinya kurang lebih untuk menampilkan isi dari file tanpa membuka file. Untuk penggunaan file.close() adalah menutup file tapi tanpa penggunan sintaks ini Python sendiri menutup otomatis.

Untuk latihan kali ini saya ada 2 skrip, pertama skrip panjang dan belum ada penghapusan beberapa fitur. Untuk skrip kedua ada penghapusan modul dan hanya satu bari. Skrip lengkap :

from sys import argv
# modul exist berfungsi untuk mengecek apakah file sudah ada atau belu, jika belum aka mengahsilkan FALSE
from os.path import exists

# nama file yang akan dipanggil dan yang akan diisi
script, file1, file2 = argv

print(f"Menyalin isi dari {file1} ke {file2}")

# membuka file awal
file_awal = open(file1)
# membaca isi file
data_awal = file_awal.read()

# menghitung panjang dari string menggunakan len 
print(f"besar file yang akan disalin adalah {len(data_awal)} bytes")

# penggunaaan modul exist
print(f"apakah {file2} sudah tersedia? {exists(file2)}")
print("tekan enter jika ingin melanjutkan proses, dan tekan ctrl+c untuk membatalkan")
input()

# membuka file yang akan diisi
file_dua = open(file2, 'w')
# menulis isi file
file_dua.write(data_awal)

print("Penyalinan isi file telah selesai")

# menutup semua file
file_awal.close()
file_dua.close()

Skrip satu baris dan menghapus modul pada skri lengkap :

from sys import argv;script, file1, file2 = argv;print(f"Menyalin isi dari {file1} ke {file2}");file_awal = open(file1);data_awal = file_awal.read();print(f"besar file yang akan disalin adalah {len(data_awal)} bytes");print("tekan enter jika ingin melanjutkan proses, dan tekan ctrl+c untuk membatalkan");input();file_dua = open(file2, 'w');file_dua.write(data_awal);print("Penyalinan isi file telah selesai");file_awal.close();file_dua.close()

Untuk menjadikan satu baris seperti diatas adalah mengganti enter/baris baru dengan tanda (;), bisa perhatikan file diatas.

comments powered by Disqus