Pythondaki Dosya İşlemleri

Pythondaki Dosya İşlemleri

Python programlama dilinde dosya işlemleri oldukça önemlidir Pythondaki dosya işlemleri konusunu öğrenerek, dosya okuma, yazma ve düzenleme işlemlerini rahatlıkla yapabilirsiniz Bu konuda detaylı bir rehber için sitemize göz atabilirsiniz

Pythondaki Dosya İşlemleri

Python, veri manipülasyonu, veri analizi, makine öğrenmesi ve programlama alanlarında en yaygın kullanılan dillerden biridir. Bu durum dosya işlemleri için de geçerlidir. Dosya işlemleri; veri okuma, yazma, güncelleme, silme, dosya gezginleri kullanarak dosyalar arasında gezinme ve dosya tasnifleri yapma işlemlerini içerir. Bu makalede, Python programlama dili kullanarak dosya işlemleri hakkında genel bir bakış sunulacaktır.

Python'da dosya işlemleri yapmak oldukça kolaydır. Dosyalar, farklı amaçlar için oluşturulabilir. Örneğin, bir dosyanın içindeki verilere erişmek, yeni veri eklemek ya da var olan verileri güncellemek gibi işlemler python programlama dili ile yapılabilir. Dosya işlemlerinde kullanılan temel kavramlardan biri, dosya modlarıdır. Dosya modları, dosyanın açılış şeklini belirler. Python programlama dili, dosya işlemlerinde kullanılan tüm dosya modlarını destekler.

Bu nedenle, Python programlama dili ile yapılan dosya işlemleri oldukça popülerdir. Dosya oluşturma, okuma, yazma, silme, güncelleme, dosya gezginleri, dosya tasnifleri gibi temel dosya işlemleri Python programlama diline ait modüller ile kolaylıkla yapılabilir. Python programlama dilinin popüler ve kullanışlı dosya işlemleri modülleri sayesinde, dosya işlemleri daha verimli bir şekilde gerçekleştirilebilir.


Dosyaların Oluşturulması ve Okunması

Python programlama dilinde dosya oluşturma ve okuma işlemleri oldukça önemli bir yere sahiptir. Dosyalar, verilerin saklanması, okunması ve manipüle edilmesi için kullanılır. Python'da dosya oluşturma işlemi, farklı amaçlar için gerçekleştirilebilir. Bunlardan biri de, verilerin okunması ve yazılmasıdır.

Dosya oluşturma işlemi, open() fonksiyonu ile gerçekleştirilir. Bu fonksiyon, bir dosya adı ve açılış modu parametresi alır. Açılış modu, dosyanın açık olacağı modu belirler. Python'da kullanılan açılış modları şunlardır:

Açılış Modu Açıklama
'r' Dosya sadece okuma modunda açılır.
'w' Dosya sadece yazma modunda açılır. Eğer dosya yoksa oluşturulur.
'a' Dosya yazma modunda açılır. Ancak eğer dosya yoksa oluşturulur. Dosya varsa, sonuna ekleme yapılır.
'x' Dosya yazma modunda açılır. Ancak, dosya zaten varsa hata verir.

Dosya okuma işlemi ise, read() fonksiyonu ile gerçekleştirilir. Bu fonksiyon, mevcut dosyanın tüm verilerini döndürür. Ancak, dosya okuma işlemi sırasında dikkatli olunmalıdır. Dosyanın tüm verilerini okumak, bellek açısından bir sorun yaratabilir. Bu nedenle, dosya okuma işlemi sırasında readline() fonksiyonu tercih edilebilir. Bu fonksiyon, dosyanın sadece bir satırını okur ve bellek açısından daha az yer kullanır.

Dosyanın kapatılması işlemi, close() fonksiyonu ile gerçekleştirilir. Bu fonksiyon, açık olan dosyanın kapatılmasını sağlar ve bellekte yer kaplamasını önler.

Özetle, Python'da dosya oluşturma ve okuma işlemleri oldukça basit ve kolaydır. Dosya oluşturma işlemi, open() fonksiyonu ile gerçekleştirilir ve açılış modu parametresi ile dosyanın nasıl açılacağı belirlenir. Dosya okuma işlemi ise, read() veya readline() fonksiyonları ile gerçekleştirilir. Dosyanın kapatılması işlemi ise, close() fonksiyonu ile gerçekleştirilir.


Dosya Modları

Python'da dosya işlemleri sırasında kullanılan önemli kavramlardan biri, dosya modlarıdır. Dosya modları gelecekteki işlemleri planlamak adına dosya açılış şeklini belirler. Python'da 4 farklı dosya modu bulunmaktadır:

Dosya Modu Açıklama
r Dosya okuma modu. Dosya açılır ve okunabilir olarak işaretlenir.
w Dosya yazma modu. Dosya açılır ve yazılabilir olarak işaretlenir. Varolan dosyalar yazma işlemi sırasında tamamen silinir.
a Dosya güncelleme modu. Dosya açılır ve güncellenebilir olarak işaretlenir. Dosya yoksa, bir tane oluşturulur.
x Dosya oluşturma modu. Dosya açılacak ve yazılabilir olarak işaretlenecektir. Dosya zaten mevcut ise hata verecektir.

Dosya modları, açıkça belirtilmediği takdirde varsayılan olarak 'r' modunda açılır. Dosya modlarının kullanımı, dosya işlemi sırasında birinci parametre olarak verilir.

  • Örnek: dosya = open("dosya.txt", "w")

Bu örnekte, "dosya.txt" dosyası yazma modunda açılır ve dosya zamanda silinir. İşlem tamamlandığında, file.close () işlemi kullanılmalıdır. Bu, içeriği tamamen kaydedecek ve dosyanın boşta olmayacağından emin olacaktır.


Okuma Modu

Python programlama dili, dosya okuma ve yazma işlemleri için harika bir seçenektir. Okuma modu, bir önceden oluşturulmuş dosyanın içindeki verilerin okunmasını sağlar. Python'da dosya okuma işlemi yapmak oldukça kolaydır.

Dosyaların okunmasında kullanılan temel adımlar şunlardır:

  • Dosya açmak
  • Dosyadan veri okumak
  • Dosyayı kapatmak

Dosya açma işlemi, open() fonksiyonu kullanılarak gerçekleştirilir. Bu fonksiyon dosya adını ve hangi modda açılacağını parametre olarak alır. Mod olarak "r" kullanıldığında, dosya okuma modunda açılır. Bu mod, bir dosyanın okunabilir halde açılmasını sağlar.

Dosyadan veri okuma işlemi ise read() fonksiyonu kullanılarak gerçekleştirilir. Bu fonksiyon, dosyanın okunmasını sağlar ve dosyadaki verileri bir değişkene atar. Bu değişkende daha sonra işlem yapılabilir.

Dosyanın işlemi tamamlandıktan sonra ise close() fonksiyonu kullanılarak dosya kapatılır. Bu, dosyaların gereksiz bellek kullanımını önlemek için önemlidir.

Aşağıdaki kod örneğinde, dosya okuma işlemi adım adım açıklanmaktadır:

file = open("dosya.txt", "r")data = file.read()print(data)file.close()

Bu örnek kodda, "dosya.txt" adlı bir dosya, "r" modunda açılır. Dosyanın içindeki tüm veriler, read() fonksiyonu kullanılarak okunur ve bir değişkene atanır. Daha sonra, bu veriler yine bir print() fonksiyonu kullanılarak ekrana yazdırılır. Son olarak dosya, close() fonksiyonu ile kapatılır.


Yazma Modu

Dosya yazma modu, Python'da oluşturulan bir dosyaya veri yazmayı sağlar. Dosya yazmak için open() fonksiyonu kullanılır. Bu fonksiyona dosyanın adı ve açma modu da verilir. Açma modu, dosyanın nasıl açılacağını belirler. Örneğin, "w" modu dosyayı yazmak için açar.

Dosyaya veri yazmak için, write() fonksiyonu kullanılır. Bu fonksiyon, bir metin belgesine veya bir veri dosyasına veri yazmanın en basit yoludur. Bu fonksiyon, veri dosyasına veri ekler ve veriyi yazdıktan sonra, dosyayı kapatmak gereklidir.

Örnek:
f = open("dosya.txt", "w")f.write("Bu bir test verisidir.")f.close()

Bu örnekte, "dosya.txt" adlı bir dosya oluşturulur ve "w" modu ile açılır. Daha sonra, "write()" fonksiyonu kullanılarak "Bu bir test verisidir." ifadesi dosyaya yazılır. Son olarak, dosya "close()" fonksiyonu ile kapatılır.

İster metin dosyası ister veri dosyası olsun, dosyaların yazılması için tek bir satırda çok sayıda veri de yazılabilir. Bunun için, veriler arasına virgül konur.

Örnek:
f = open("dosya.txt", "w")f.write("Bu bir test verisidir.", "Bu da ikinci bir test verisidir.")f.close()

Bu örnekte, "dosya.txt" adlı bir dosya oluşturulur ve "w" modu ile açılır. Daha sonra, "write()" fonksiyonu kullanılarak "Bu bir test verisidir." ve "Bu da ikinci bir test verisidir." ifadeleri dosyaya yazılır. Son olarak, dosya "close()" fonksiyonu ile kapatılır.


Örnekler

Python, dosya işlemleri konusunda oldukça güçlü bir dildir. Dosya işlemleri, verilerin okunması, yazılması, güncellenmesi ve silinmesi gibi işlemleri içerir. Bu bölümde, Python'da dosya işlemleriyle ilgili örnek senaryolar sunulacaktır. Örneklerde, farklı dosya işlem modları kullanılarak verilerin nasıl manipüle edilebileceği gösterilecektir.

Örneğin, bir dosya oluşturup bu dosyaya veri yazalım:

f = open('ornek.txt', 'w')f.write('Bu bir ornek dosyadır.')f.close()

Bu kodda, 'ornek.txt' adında bir dosya oluşturduk ve bu dosyaya 'Bu bir ornek dosyadır.' yazısını yazdık. Ardından dosyayı kapattık. Bu işlemi gerçekleştirdikten sonra, dosyanın içeriklerini okuyabiliriz:

f = open('ornek.txt', 'r')print(f.read())f.close()

Bu kod, 'ornek.txt' dosyasını okur ve içeriğini ekrana yazdırır. 'r' parametresi, dosyanın okuma modunda açılacağını belirtir. Aynı şekilde, dosyaya veri ekleyebilir ve dosyaya yeni bir satır ekleyebilirsiniz:

f = open('ornek.txt', 'a')f.write('\nBu yeni bir satırdır.')f.close()

Bu kodda, 'a' parametresi kullanarak dosyanın açılacağını belirttik. Ardından dosyaya '\nBu yeni bir satırdır.' yazdık. '\n' ifadesi, yeni bir satıra geçeceğimizi belirtir. Dosyanın içeriğini okuduğumuzda, yeni satırı görebiliriz:

f = open('ornek.txt', 'r')print(f.read())f.close()

Bu örnekler, Python'da dosya işlemlerinin nasıl gerçekleştirildiğini göstermektedir. Dosya işlemleri sırasında farklı dosya modları kullanarak verileri manipüle etmek mümkündür. Python'da dosya işlemleri konusunda daha fazla bilgi edinmek için dokümantasyonları inceleyebilir veya farklı örneklere göz atabilirsiniz.


Dosyaların Güncellenmesi ve Silinmesi

Python'da dosyaların güncellenmesi ve silinmesi, dosya işlemlerinin diğer temel işlemleri kadar kolaydır. Var olan bir dosyanın içerisine yeni verilerin eklenmesi, Python'da oldukça basit bir işlemdir. Dosyaların güncellenmesi, dosyaların okunması ve yazılmasıyla aynı işlemi kullanır. Güncelleme işlemi yapmak için ise dosyalar "append" modunu kullanmalıdır. Bu sayede dosya sonuna yeni veriler ekleyerek dosyayı güncellenir. Aşağıdaki örnekte, dosyanın sonuna bir metin eklenir:

with open("dosya.txt", "a") as file:    file.write("Bu dosya güncelleniyor.")

Python'da dosya silme işlemi de oldukça kolaydır. Silme işlemi yapmadan önce, dosyanın tam yolunu bilmek önemlidir. Dosyalar "os" modülü yardımıyla silinebilir. Aşağıdaki örnekte, "dosya.txt" adlı bir dosya silinir:

import osos.remove("dosya.txt")

Yukarıdaki işlemler, dosya işlemlerinin temel işlemleridir. Python'da farklı dosya işlemleri yapmak için pek çok yöntem vardır. Bu yöntemleri kullanarak farklı dosya işlemleri yapmak mümkündür.


Güncelleme İşlemi

Python'da, var olan bir dosyanın içerisine yeni verilerin eklenmesi oldukça kolaydır. Bu işlem için, dosyanın açılması gerekir. Açılan dosya yazma modunda olmalıdır. Yazma modunda açılan dosyaya, ekleme yapmak için 'a' işlemi yapılmalıdır. Yani, mevcut verilerin yanına ekleme yapmak için yazma modunda açılacak dosyaya 'a' işlemi yapılmalıdır.

Bu işlem için, şu adımlar takip edilebilir:

  • Dosyanın açılması: Dosyanın adı ve işlem yapılacak mod belirtilerek dosya açılır.
  • Veri eklenmesi: Dosyaya eklenecek yeni veriler, yazma modunda açılan dosyanın sonuna write() metodu ile eklenir.
  • Dosyanın kapatılması: Dosya artık kullanılmayacaksa, kapatılması gerekir. Bunu yapmak için close() metodu kullanılır.

Aşağıdaki örnek, mevcut bir dosyaya yeni veriler ekler:

f = open("dosya.txt", "a")f.write("Bu dosyaya yeni bir satır ekledim.")f.close()

Bu yöntemle, dosyanın sonuna yeni veriler eklenebilir. Dosya okuma modunda açıldığında, yeni eklenen veriler mevcut verilerin altında görüntülenecektir.


Silme İşlemi

Python'da, bir dosyanın silinmesi oldukça basittir. Dosya silme işlemi, 'os' modülü kullanılarak gerçekleştirilir. Bu modül, dosya işlemleri için kullanılan birçok fonksiyonu içerisinde barındırır.

Dosya silme işlemi gerçekleştirilirken, öncelikle dosyanın var olup olmadığı kontrol edilir. Eğer dosya mevcut ise, 'os' modülü içerisinde yer alan 'remove()' fonksiyonu kullanılarak dosya silinir.

Örneğin, aşağıdaki kod parçası ile 'example.txt' dosyası silinebilir:

import osif os.path.exists("example.txt"):  os.remove("example.txt")else:  print("The file does not exist")

Bu kod parçasında, 'os.path.exists()' fonksiyonu da kullanılarak, dosyanın var olup olmadığı kontrol edilir. Eğer dosya var ise 'os.remove()' fonksiyonu kullanılarak silinir. Aksi halde, dosyanın mevcut olmadığına dair bir mesaj ekrana yazdırılır.

Dosya silme işlemi geri alınamaz. Bu nedenle, dosya silme işlemi gerçekleştirilmeden önce, dosya sıfırlanmalı veya yedeği alınmalıdır.


İleri Düzey Dosya İşlemleri

Python, sadece basit dosya işlemleri için değil, ileri düzey dosya işlemlerine de olanak tanır. Bu bölümde, ileri düzey dosya işlemleri hakkında bilgi vereceğiz.

Python'da, dosya gezginleri kullanarak dosya ve klasörler arasında gezinmek oldukça kolaydır. os modülü, işletim sistemiyle ilgili işlemler yapmak için kullanılır ve Python'da belirli bir dizindeki tüm dosyaları ve klasörleri listelememize olanak tanır. Örneğin:

import osfor root, dirs, files in os.walk('C:\\Users\\Kullanıcı\\Desktop'):    for name in files:        print(os.path.join(root, name))    for name in dirs:        print(os.path.join(root, name))

Bu kod, 'C:\\Users\\Kullanıcı\\Desktop' dizinindeki tüm dosya ve klasör adlarını listeler ve ekrana yazdırır.

Python'da, dosyaları farklı kategorilere ayırmak ve bu kategoriler üzerinde işlemler yapmak da oldukça kolaydır. Örneğin, belirli bir tarihte oluşturulan tüm dosyaları bulabilir ve bunları bir klasöre taşıyabiliriz. Aşağıdaki örnek, tarihi 31 Aralık 2021 olan tüm dosyaları 'archive' klasörüne taşır:

import osimport shutilimport datetimefor file in os.listdir('.'):    if os.path.isfile(file):        t = os.path.getmtime(file)        if datetime.datetime.fromtimestamp(t).date() == datetime.date(2021, 12, 31):            if not os.path.exists('archive'):                os.makedirs('archive')            shutil.move(file, 'archive\\' + file)

Bu kod, şu anki dizindeki tüm dosyaları dolaşarak, her bir dosya için oluşturulan zamanı alır. Ardından, bu tarihin 31 Aralık 2021 olduğunu kontrol eder. Eğer tarih doğruysa, 'archive' adında bir klasör oluşturur (henüz yoksa) ve dosyayı buraya taşır.


Dosya Gezginleri

Python'da dosya gezginleri kullanarak dosya ve klasörler arasında gezinmek oldukça kolaydır. Dosya gezginleri, programlama dillerinde dosya ve klasörler arasında gezinmek için kullanılan araçlardır. Python'da dosya işlemleri sırasında kullanılan os modülü, bu işlemlerin gerçekleştirilmesi için birçok dosya gezginini içermektedir.

Os modülünde yer alan listdir() fonksiyonu, belirli bir dizindeki dosya ve klasörleri listelemek için kullanılır. Bu fonksiyon, dosya ve klasörlerin adını, boyutunu ve tarihini de içeren ayrıntılı bir çıktı verir. Ayrıca chdir() fonksiyonu, dizin değiştirmek için kullanılır. Bu fonksiyon, belirli bir dizine giderek dosyalarla ilgili işlemler yapmamızı sağlar.

Ayrıca mkdir() fonksiyonu, Python'da yeni bir klasör oluşturmak için kullanılır. Bu fonksiyon ile, verilen isimde bir klasör oluşturabilirsiniz. Dosya işlemleri sırasında sıklıkla kullanılan bir diğer fonksiyon da rmdir() fonksiyonudur. Bu fonksiyon, belirtilen bir klasörü silmek için kullanılır.

Fonksiyon Açıklama
listdir() Dizindeki dosya ve klasörleri listeler.
chdir() Dizin değiştirir.
mkdir() Yeni bir klasör oluşturur.
rmdir() Belirtilen bir klasörü siler.

Python'da dosya gezginleri kullanarak dosyalarla ilgili birçok işlem yapabilirsiniz. Bu fonksiyonlar sayesinde, belirli bir klasör altındaki dosyaları listeleme, dosyalara erişme ve dosyaları sıralama gibi işlemler yapabilirsiniz. Dosya gezginleri hakkında daha ayrıntılı bilgi edinmek için Python'un resmi belgelerini incelemenizi tavsiye ederiz.


Dosya Tasnifleri

Python'da, dosya işlemleri kategorize edilerek yapılabilmektedir. Dosya tasnifleri, dosyaların belirli kriterlere göre ayrılmasını sağlar ve bu ayrılmış dosyalar üzerinde işlemler yapabilmemize olanak tanır. Dosya tasnifinde kullanılan yöntemler aşağıda belirtilmektedir:

  • İsim Bazlı Tasnif: Bu yöntemde, dosyaların isimleri dikkate alınarak belirli kategorilere ayrılır. Örneğin, bir klasör içerisindeki tüm resim dosyaları "resim" kategorisine ayrılabilir.
  • Boyut Bazlı Tasnif: Bu yöntemde, dosyaların boyutlarına göre belirli kategorilere ayrılır. Örneğin, bir klasör içerisindeki büyük boyutlu dosyalar "yüksek boyutlu dosyalar" kategorisine ayrılabilir.
  • Tarih Bazlı Tasnif: Bu yöntemde, dosyaların tarihlerine göre ayrım yapılır. Örneğin, bir klasör içerisindeki son bir hafta içerisinde oluşturulmuş dosyalar "yeni dosyalar" kategorisine ayrılabilir.

Python'da dosya tasnifi yapmak oldukça basittir. Dosyalar, öncelikle belirli bir kategoriye göre ayrılır ve daha sonra bu kategorizasyonun üzerinde işlemler yapılır. Örneğin, belirli bir kategorideki tüm dosyaların adını değiştirmek istediğimizde, sadece o kategorideki dosyalara erişip işlem yapmamız gerekmektedir.

Bununla birlikte, dosya tasnifi işlemleri sırasında dikkat edilmesi gereken bazı önemli noktalar da vardır. Örneğin, dosyaların kategorizasyonu yapılırken dosyanın veri kaybı yaşamaması ve dosya hierarşisinin korunması gerekmektedir.