Python dilinde dizin işlemleri “OS” modülünü kullanarak yapılmaktadır. Bu örnekte bir dizindeki “.mp3” uzantılı dosyaları başka bir dizine nasıl kopyalanacağı anlatılmaktadır .
Python’daki OS modülü , işletim sistemi üzerinde değişiklikler yapmak için kullanılır . OS modülünün sunduğu işlevler,bazı zamanlar platform bağımlı olabilmektedir .
Bu yazıda yukarıdaki probleme karşılık gelen işlevlerin bazılarını göstereceğim.
1. “Os” ve “Path” modüllerini kullanarak kopyalama yapma :
import os
from path import Path
KAYNAK = '/Users/yyilmazmehmet/Desktop/a' # Müziklerin bulunduğu dizin
HEDEF = '/Users/yyilmazmehmet/Desktop/a_copy' # Müziklerin Kopyalanacağı Dizin
k = Path(KAYNAK) #KAYNAK Adlı değişken string bir ifadedir . Bu ifadeyi Path tipine dönüştürüyoruz .
h = Path(HEDEF) #HEDEF Adlı değişken string bir ifadedir . Bu ifadeyi Path tipine dönüştürüyoruz .
print("\n\nKAYNAK adlı değişkenin tipi : %s" % type(KAYNAK))
print("k adlı değişkenin tipi : %s " % type(k))
print("\n\nHEDEF adlı değişkenin tipi",type(HEDEF))
print("h adlı değişkenin tipi",type(h))
def transfer():
print ("\n\nDosyalar %s adresinden %s adresine kopyalanıyor !!\n" % (k, h))
dosya_sayisi = 0
for i in k.walk(): #dizinin içindek dosyaları gez
if i.isfile() and i.endswith("mp3"): #eğer mevcut indiste bir mp3 uzantılı dosya var ise
dosya_sayisi += 1 #dosya sayısını artır
print("Kopyalanıyor %s" % i)
i.copy(h) #hedefe mevcut indisteki mp3 uzantılı dosyayı kopyala
if (dosya_sayisi == 0):
print("Mevcut dizinde .mp3 uzantılı dosya bulunamadı ! ")
else:
print("\n%s adet dosya başarılı şekilde kopyalandı" % dosya_sayisi)
if __name__ == "__main__":
if(os.path.exists(KAYNAK)):
transfer()
else:
print("\n\nDosya Yolu Bulunamadı")
Program Çıktısı :

2-“OS” ve “Shutil” modüllerini kullanarak kopyalama yapma :
Shutil Nedir ?
Shutil dizinler üzerinde bulunan dosyaları kopyalama , taşıma , açma, okuma , yazma ve kapatma gibi işlemleri “OS” modülü ile beraber basitçe yapmamızı sağlayan bir Python modülüdür.
import os, shutil
kaynak = "/Users/yyilmazmehmet/Desktop/a/"
hedef = "/Users/yyilmazmehmet/Desktop/a_copy/"
files = os.listdir(kaynak)
files.sort()
dosya_sayisi = 0
for f in files:
if f.endswith(".mp3"):
dosya_sayisi += 1
k = kaynak+f
h = hedef+f
shutil.copy(k,h)
print("%d adet dosya kopyalandı" %dosya_sayisi)Program Çıktısı :




Modülleri nasıl yükleyeceğiz yardımcı olursanız sevinirim?