Modül io: Python’da Giriş ve Çıkış İşlemlerini Yönetme
Giriş
Python’da io
modülü, giriş ve çıkış (G/Ç) işlemlerini yönetmek için kapsamlı bir araç seti sağlar. Dosyalar, ağ soketleri ve diğer G/Ç kaynaklarıyla etkileşime geçmeyi kolaylaştırır. Bu makale, io
modülünün temel kavramlarını, işlevlerini ve kullanım örneklerini inceleyecektir.
Temel Kavramlar
io
modülü, aşağıdakiler de dahil olmak üzere çeşitli temel kavramlara dayanır:
- Akışlar: G/Ç işlemlerini gerçekleştirmek için kullanılan veri akışları.
- Tamponlar: Akışlardan ve akışlara veri okumak ve yazmak için kullanılan geçici bellek alanları.
- Kodlamalar: Verilerin farklı karakter kümeleri arasında dönüştürülmesini sağlayan karakter kodlama şemaları.
Akış Türleri
io
modülü, aşağıdakiler de dahil olmak üzere çeşitli akış türlerini destekler:
- Dosya Akışları: Dosyaları okumak ve yazmak için kullanılır.
- Soket Akışları: Ağ soketleri üzerinden veri alışverişi yapmak için kullanılır.
- Hafıza Akışları: Bellekte veri depolamak ve işlemek için kullanılır.
- String Akışları: Dize verileri okumak ve yazmak için kullanılır.
Akış İşlevleri
io
modülü, akışlarla etkileşim kurmak için aşağıdakiler de dahil olmak üzere çeşitli işlevler sağlar:
- read(): Akıştan veri okur.
- write(): Akışa veri yazar.
- seek(): Akıştaki geçerli konumu ayarlar.
- tell(): Akıştaki geçerli konumu alır.
- close(): Akışı kapatır.
Kodlamalar
io
modülü, verilerin farklı karakter kümeleri arasında dönüştürülmesini sağlayan çeşitli kodlamaları destekler. En yaygın kodlamalar şunlardır:
- UTF-8: Unicode karakter kümesinin değişken uzunluklu bir kodlaması.
- ASCII: İngilizce alfabesi ve bazı özel karakterler için 7 bitlik bir kodlama.
- Latin-1: Batı Avrupa dilleri için 8 bitlik bir kodlama.
Kullanım Örnekleri
io
modülünü kullanarak G/Ç işlemlerini gerçekleştirmek için aşağıdaki örnekleri göz önünde bulundurun:
Dosya Okuma:
python
with open("dosya.txt", "r") as dosya:
icerik = dosya.read()
Dosya Yazma:
python
with open("dosya.txt", "w") as dosya:
dosya.write("Bu bir test metnidir.")
Soket Bağlantısı:
“`python
import socket
soket = socket.socket()
soket.connect((“sunucu.com”, 80))
“`
Bellekte Veri İşleme:
“`python
from io import StringIO
veri = StringIO()
veri.write(“Bu bir bellek akışındaki veridir.”)
“`
Faydalı Siteler ve Dosyalar