Dosya İşlemleri # 16 - Python Dersleri (Tutorials)

in #palnet5 years ago (edited)

yeni.jpg

Merhabalar

Python programlama derslerinin bu bölümünde dosyanın ortasına herhangi bir veri eklemeyi göreceğiz.

Dosya ile ilgili işlemlerde fark ettiniz mi bilmiyorum, kullandığımız fonksiyon veya metotlar aslında daha öncesinde gördüğümüz fonksiyon veya metotlardır. Ancak biz algoritmayı değiştirerek veri kaybının önüne geçecek şekilde dosyada değişiklik yapma yoluna gidiyoruz.

Dosyanın Ortasına Veri Ekleme

readlines() metodu, dosyanın içeriğini alıp listeye çevirir. Liste elemanları ise dosyanın her bir satırıdır.

Dosyanın ortasına veri eklemek için readlines() metodundan faydalanırız. readlines() metodu ile tüm dosyayı listeye çevirdikten sonra bir liste metodu olan insert() metodu ile de verimizi istediğimiz indexe yazarız.

Genel algoritma bu yöndedir. Uygulamaya geçmeden önce işlem yapacağımız dosyanın içeriğini okuyalım :

Görüldüğü gibi dosyamız 6 satırdan oluşmaktadır. Biz şimdi "C" ile "Java" satırları arasına "C++" içeriğini eklemeye çalışalım.

Şimdi kod kısmına geçelim. İlk olarak readlines() metodunun nasıl bir dosyayı listeye çevirdiğini görelim :

Dosyamızı "r+" modunda açtıktan sonra file değişkeni üzerinden readlines() metodunu çağırıyoruz. readlines() metodunun döndürdüğü listeyi contentList değişkenine atayım print() fonksiyonu ile listeyi ekrana yazdırıyoruz.

Buraya kadar her şey konuştuğumuz gibi. Bu noktada insert() metodunun kullanımı ile alakalı ufak bir bilgi verelim.

insert() metodu, 2 parametre alan bir metottur. İlk parametre eklenecek verinin index numarası iken ikinci veri eklenecek olan verinin kendisidir.

Şimdi de uygulamamızın kalan kısmını yazalım :

Uygulamamızda readlines() metodu ile dosyayı listeye çevirdikten sonra

contentList.insert(2, "C++\n")

insert() metodu ile 2.index'e yani 3.sıraya "C++" içeriğini ekledik.

Listemiz bu haliyle istediğimiz gibi oldu. Sıra bu listeyi dosyaya yazdırmaya geldi. Bunun için ilk olarak

file.seek(0)

kodu ile imlecimizi dosyanın başına getiriyoruz. Sonra da _ for_ döngüsü ile her bir liste elemanını write() metodunu kullanarak dosyaya yazdırıyoruz.

Bu haliyle uygulamamızın başarıyla çalışmış olması gerekiyor. Sonucu görmek için dosyamızı okuyalım :

Görüldüğü gibi "C++" içeriği istediğimiz gibi "C" ile "Java" kelimeleri arasına yazılmıştır.

Şimdilik bu kadar.

Umarım faydalı bir çalışma olmuştur.

Teşekkürler.

yesilayrca.png

Kaynak belirtilmeyen görseller bana aittir. The pictures without source in the post is belong to me


Posted via Marlians.com
Sort:  

Hocam 16. ders olmuş. Elinize sağlık.

Öyle oldu. Teşekkür ederim hocam değerli yorumunuz için :)

You got a 97.75% upvote from @minnowvotes courtesy of @elektroyazilim!

You got a 21.77% 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!

You got a 67.20% upvote from @brupvoter courtesy of @elektroyazilim!

You got a 50.00% upvote from @bid4joy courtesy of @elektroyazilim!

You got a 50.00% upvote from @whalecreator courtesy of @elektroyazilim! Delegate your Steem Power to earn 100% payouts.

You got a 96.83% upvote from @luckyvotes courtesy of @elektroyazilim!

Coin Marketplace

STEEM 0.30
TRX 0.12
JST 0.033
BTC 64303.16
ETH 3137.29
USDT 1.00
SBD 3.97