Çözüldü Python ile klasör içindeki bütün dosyaları seçme

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

kamuran41

Hectopat
Katılım
6 Temmuz 2022
Mesajlar
80
Çözümler
1
Daha fazla  
Cinsiyet
Erkek
Python ile klasör içindeki bütün dosyaları tek tek işleme tabii tutmak istiyorum. Masüstündeki "klasörüm" klasöründeki bütün PNG (sadece PNG var zaten) dosyalarını liste şeklinde bana verebilecek bir fonksiyon veya kütüphane var mı?
 
Çözüm
Python ile klasör içindeki bütün dosyaları tek tek işleme tabii tutmak istiyorum. Masüstündeki "klasörüm" klasöründeki bütün PNG (sadece PNG var zaten) dosyalarını liste şeklinde bana verebilecek bir fonksiyon veya kütüphane var mı?
Python:
def get_pictures(folder):
    for content in os.listdir(folder):
        if os.path.isfile(content) and os.path.splitext(os.path.basename(content))[1].lower() == "png":
            yield f"{os.path.abspath(folder)}{os.sep}{content}"

Böyle bir örnek yardımcı olacaktır diye düşünüyorum.
İşlem basit. Klasör içindeki tüm dosyaları bir Array'e ekleyip sırayla işleme koymanız lazım. Eğer belli bir dosya uzantılarını çekmek istiyorsanız ona göre ayarlamanız lazım. Örneğin JPG, PNG ve GIF dosyalarını seçsin sadece gibi.
 
Python ile klasör içindeki bütün dosyaları tek tek işleme tabii tutmak istiyorum. Masüstündeki "klasörüm" klasöründeki bütün PNG (sadece PNG var zaten) dosyalarını liste şeklinde bana verebilecek bir fonksiyon veya kütüphane var mı?
os.walk fonksiyonu işinizi görecektir.
 
Python ile klasör içindeki bütün dosyaları tek tek işleme tabii tutmak istiyorum. Masüstündeki "klasörüm" klasöründeki bütün PNG (sadece PNG var zaten) dosyalarını liste şeklinde bana verebilecek bir fonksiyon veya kütüphane var mı?
Python:
def get_pictures(folder):
    for content in os.listdir(folder):
        if os.path.isfile(content) and os.path.splitext(os.path.basename(content))[1].lower() == "png":
            yield f"{os.path.abspath(folder)}{os.sep}{content}"

Böyle bir örnek yardımcı olacaktır diye düşünüyorum.
 
Çözüm
İşlem basit. Klasör içindeki tüm dosyaları bir Array'e ekleyip sırayla işleme koymanız lazım. Eğer belli bir dosya uzantılarını çekmek istiyorsanız ona göre ayarlamanız lazım. Örneğin JPG, PNG ve GIF dosyalarını seçsin sadece gibi.
Merhaba peki sadece JPG leri çekmek istediğimizde klasörlerde konumlarını da alabiliyor muyuz ? Mesela bir klasörümden örnek vereyim;
1703709115562.png

Bu klasörlerin içerisinde JPG ve MAX uzantılı dosyalar var ama ben sadece JPG uzantılı dosyaları almak istiyorum ve Glass klasöründeki JPG yeni yapıştıracağım yerde Glass klasörüyle gelmeli Leather klasöründeki JPG de aynı şekilde devam etmeli. Bunun bir yolu var mı ?
Yani asıl amaç MAX dosyalarını dışında tutacak şekilde dosyaları kopyalamak istiyorum. Çünkü tamamını kopyalayacak bir disk alanım kalmadı sadece JPG ler lazım oldukları konumda.

Bunun gibi 150 klasör var yoksa tek tek girer içinden alırdım JPG leri.
 

Technopat Haberler

Geri
Yukarı