Python Dilinde 5. Gün: Dosya ve Dizin İşlemleri

Python, dosya ve dizin işlemleri için çok sayıda kütüphane ve işlev içerir. Bu işlemlerin çoğu os ve shutil modülleri ile gerçekleştirilir.

Dizin Oluşturma

os modülü, bir dizin oluşturmak için mkdir() işlevini sağlar. mkdir() işlevi, argüman olarak aldığı dizin adı ile yeni bir dizin oluşturur.

import os

os.mkdir("/yeni_dizin")

Bu kod, ana dizinde yeni_dizin adında bir dizin oluşturacaktır.

Dizin Silme

Dizin silmek için, os modülü yine rmdir() işlevini sağlar. Bu işlev, argüman olarak aldığı dizini siler.

import os

os.rmdir("/yeni_dizin")

Bu kod, önce oluşturulan yeni_dizin dizinini siler.

Dosya Oluşturma

Yeni bir dosya oluşturmak için, open() işlevi kullanılır. Bu işlev, argüman olarak aldığı dosya adı ile yeni bir dosya oluşturur. Ayrıca, oluşturulan dosyaya yazmak için kullanılabilecek bir dosya nesnesi de döndürür.

my_file = open("yeni_dosya.txt", "w")

Bu kod, yeni_dosya.txt adında bir dosya oluşturur ve my_file adında bir dosya nesnesi döndürür.

Dosya Okuma ve Yazma

Dosyadan okumak için, dosya nesnesi bir read() işlevi ile okunabilir.

with open("yeni_dosya.txt", "r") as my_file:
   print(my_file.read())

Bu kod, yeni_dosya.txt dosyasını okur ve ekrana yazdırır.

Dosyaya yazmak içinse, dosya nesnesinin write() işlevi kullanılır.

with open("yeni_dosya.txt", "w") as my_file:
    my_file.write("Merhaba!")

Bu kod, yeni_dosya.txt dosyasına "Merhaba!" metnini yazar.

Dosya Taşıma ve Silme

Dosyaları taşımak ve silmek için, shutil modülü kullanılır. shutil.move() işlevi, argüman olarak aldığı kaynak dosya adını ve hedef konum adını kullanarak dosya taşıma işlemini gerçekleştirir.

import shutil

shutil.move('yeni_dosya.txt', '/yeni_konum/yeni_dosya.txt')

Bu kod, yeni_dosya.txt dosyasını /yeni_konum/ dizinine taşır.

os.remove() işlevi, argüman olarak aldığı dosyayı siler.

import os

os.remove("yeni_dosya.txt")

Bu kod, yeni_dosya.txt dosyasını siler.

Sonuç

Python, dosya ve dizin işlemleri için kapsamlı bir destek sunar. os ve shutil modülleri, bu işlemleri gerçekleştirmek için bir dizi işlev sağlar. Bu modüllerin ve işlevlerin kullanımı, dosya ve dizinlerle çalışırken zaman ve çaba kazandırabilir.