Klasör içerisindeki aynı uzantılı dosyaları işlemek

Merhabalar,
Klasör içerisindeki aynı veya benzer uzantılı dosyaları birer birer döngü içerisine sokup, fonksiyon ile şekillendirip aynı uzantı ve isimle kaydetmek istiyorum. Önerilerinizi rica ederim.

Örnek olarak aynı klasör içerisinde bunan .txt uzantılı farklı isimli dosyalara bir kaç kelime ekleyip kaydetmek gibi. Yapmayı planladığım program ise .jpg uzantılı dosyaları işlemek olacak.

Merhaba. Belli bir dizin içindeki dosyaları listemek için os.listdir(dizin) kullanıyoruz. Bu bize dizinde bulunan dosya ve klasörlerin listesini veriyor. Daha sonra bunların uzantılarını kontrol edeceğiz ve bu dosyanın bir klasör olmadığından emin olacağız. Kaydetme işlemi için de sadece ekleme yapacaksanız “a” modunu kullanabilirsiniz:

import os

dizin = "."
uzantı = ".txt"

for dosya in os.listdir(dizin):
    if dosya.endswith(".txt") and os.path.isfile(dosya):
        print(dosya)
        with open(dosya, "a") as f:
            f.write(eklenecek_şeyler)

Ayrıca eğer amacınız bunu kendiniz yapmak değilse pillow kütüphanesini de kullanabilirsiniz.

Klasör içerisindeki .jpg uzantılı dosyalar (isimler sürekli değişiyor) üzerinden işlem yapacağım. Pillow kütüphanesini kullanıyorum bu işlemler için. Bunu 1 dosya için yapabiliyorum ama kodu çalıştırdığım klasör içerisinde tüm .jpg dosyaları için aynı işlemi yapmasını istiyorum.

Nasıl bir döngü kullanmalıyım. Teşekkürler.

1 Beğeni

Tamam, verdiğim koddaki uzantı değişkenini gerekli hale getirerek kullanabilirsiniz. Zaten kodu denerseniz nasıl çalıştığını anlarsınız diye tahmin ediyorum.

1 Beğeni