Dosya İşlemleri #3 - Python Dersleri (Tutorials)
Merhabalar
Python programlama derslerinin bir önceki dersinde dosya yazma işlemlerinden bahsetmiştik. Bu derste değinmediğim bazı noktalardan bahsedeceğim.
Bir dosyaya yazı yazma için kullanılan genel kod taslağı aşağıdaki gibidir:
İlk olarak open() fonksiyonu kullanılarak bir dosya oluşturulur. Oluşan bu dosya nesnesi file ya da başka herhangi bir isimdeki değişkene atılır.
Bundan sonra dosya ile ilgili işlemler bu nesne üzerinden yapılır. Dosyaya yazmak isteniliyorsa write() fonksiyonu kullanılır. Bu fonksiyon içerisine yazılacak olan metin çift tırnak içinde verilir.
Son olarak da close() fonksiyonu ile dosya kapatılır.
Ancak dosya yazma işlemlerinde özel bir durum vardır. Bu da girilen karakterlerin TR gibi standart dışında olması durumudur. Olur da Türkçe bir karakter kullanırsanız bu işlemleri doğru yapsanız dahi hata alırsınız.
Bu hatayı düzeltmek için open() fonksiyonuna ek bir parametre eklemek gerekir. encoding parametresi ile bu dosya içerisine "utf-8" karakterleri gireceğimizi belirtiriz:
"bilgi.txt" dosyasının içine bu şekilde yazı yazdıktan sonra tekrardan aşağıdaki kodları çalıştırırsak dosyamızın içeriğini silmiş oluruz.
"w" kipi, her seferinde dosyayı baştan oluşturduğu için dosyayı tekrardan açtığımızda dosyanın içeriği kaybolacaktır.
Bu durumda aklınıza dosyaya ekleme işlemleri nasıl yapılır gibi bir soru gelebilir.
Dosyaya Ekleme Yapma
Bir dosyaya ekleme işlemi yapmak için "a" kipiyle bir dosyayı açmamız gerekir. "a" kipi append yani ekleme kelimesinden gelmektedir.
Bir dosyayı "a" kipinde açtığımızda dosya eğer yoksa baştan oluşturulur, varsa dosya imleci dosyanın sonuna gönderilir ve dosyaya ekleme yapmamız sağlanır.
Şimdi uygulamasını görelim :
Örneğimizde file ile belirtilen dosya nesnesini "a" kipinde ve içinde "utf-8" i destekleyecek şekilde açıyoruz. Sonrasında ilk write() fonksiyonu ile dosyaya "Python Dersleri" yazısını yazdırıyoruz.
Son olarak
file.close()
kodu ile dosyamızı kapatıyoruz.
Bu dosyayı ikinci kez append kipinde açtığımızda dosya imleci dosyanın sonuna getirilecektir. write() fonksiyonunu kullanarak dosyaya yazmak istediğimizde ise yazma işlemi tam olarak imlecin bulunduğu yerden başlayacaktır.
Dosyaya
file.write("ElektroYazılım")
kodu ile ElektroYazılım yazdırdığımızda sonuç aşağıdaki gibi olacaktır :
Şimdilik bu kadar.
Umarım faydalı bir çalışma olmuştur.
Teşekkürler.
Kaynak belirtilmeyen görseller bana aittir. The pictures without source in the post is belong to me
You got a 33.33% upvote from @joeparys! Thank you for your support of our services. To continue your support, please follow and delegate Steem power to @joeparys for daily steem and steem dollar payouts!
This post has received a 18.18% upvote from @lovejuice thanks to @elektroyazilim. They love you, so does Aggroed. Please be sure to vote for Witnesses at https://steemit.com/~witnesses.
The force is with you! You got a 28.50% upvote from @steemyoda courtesy of @elektroyazilim!
You got a 88.05% upvote from @minnowvotes courtesy of @elektroyazilim!
You got a 33.33% upvote from @redlambo courtesy of @elektroyazilim! Make sure to use tag #redlambo to be considered for the curation post!
You got a 91.73% upvote from @luckyvotes courtesy of @elektroyazilim!