Verilen dizini düzenleyen program

Örnek olması adına paylaşıyorum;

import os
import shutil
class Test():
    def __init__(self):
        self.splitter()
    def splitter(self):
        """Verilen dizin üzerinde düzenleme yapar metin tipi dosyalar metinler olarak
            mp3 tipi dosyalar müzikler klasörüne toplanır vs. vs. işlem yapar."""
        def create(file,lists):
            if os.path.exists(self.dizin+os.sep+file)==False:
                os.mkdir(self.dizin+os.sep+file)
            try:
                shutil.move(self.dizin+os.sep+lists,self.dizin+os.sep+file)
            except:
                pass
        self.sözlük = {"txt":"Metinler", "pdf": "Dökümanlar",
                       "py" :"Python Dosyası", "jpg": "Resimler",
                       "png":"Resimler", "jpeg": "Resimler",
                       "rar":"Arşivler"}

        self.dizin=input("Bir dizin girin > ")
        
        if not os.path.isdir(self.dizin) or not self.dizin or self.dizin=="." or self.dizin=="..":
            print("Geçersiz dizin > ")
            return
        os.chdir(self.dizin)
        self.sonuç = [lis for lis in os.listdir(self.dizin) if os.path.isfile(lis)]
        self.uzantılar = (i.rsplit(".", 1)[1] for i in self.sonuç)
        for dosya,uzantı in zip(self.sonuç,self.uzantılar):
            dosya_türü = self.sözlük.get(uzantı)
            if dosya_türü:
                create(self.sözlük.get(uzantı),dosya)
if __name__ == "__main__":
    Test()
1 Beğeni