Bundan sonraki orneklerde f adlı bir dosya nesnesinin onceden oluşturulmuş olduğunu varsayacağız. Dosyanın iceriğini okumak icin belirli miktarda veriyi okuyup bunu dizge olarak geri donduren f.read(boy)yontemi kullanılabilir. boy okunacak bayt sayısını belirleyen secimlik bir argumandır; kullanılmaması halinde dosyanın tamamı okunur. Dosyanın sonuna gelindiğinde f.read() boş bir dizge ("") geri dondurur. >>> f.read() 'Dosyanın tamamı bu satırdan oluşuyor.\n' >>> f.read() '' f.readline() dosyadan tek bir satır okur. Satırın sonundaki satırsonu karakteri (\n) korunur; ancak dosya bir satırsonu karakteri ile bitmiyor ise son satırda bu karakter silinir. Bu ozellik geri dondurulen değerin birden fazla anlama gelmesini engeller; f.readline() boş bir dizge geri dondurduğunde dosyanın sonuna ulaşılırken boş bir satır tek bir '\n' karakteri ile ifade edilir. >>> f.readline() 'Bu dosyanın ilk satırı.\n' >>> f.readline() 'Dosyanın ikinci satırı\n' >>> f.readline() '' f.readlines() dosya icindeki butun satırların bulunduğu bir liste geri dondurur. Secimlik parametre boy_ipucu kullanılması durumunda ise dosyadan boy_ipucu kadar ve bundan bir satır tamamlamaya yetecek kadar fazla bayt okunur ve bunlar yine satırlar listesi şeklinde geri dondurulur. >>> f.readlines() ['Bu dosyanın ilk satırı.\n', 'Dosyanın ikinci satırı\n'] f.write(dizge) yontemi dizge iceriğini dosyaya yazar ve None geri dondurur. >>> f.write('Bu bir deneme satırıdır.\n') f.tell() dosya nesnesinin dosya icindeki konumunu belirten bir tamsayı geri dondurur (dosyanın başından bayt cinsinden olculur). f.seek(uzaklık, nereden) ile de dosyanın icinde istenen konuma gidilebilir. Konum, uzaklık ile başvuru noktası nereden değerlerinin toplanması ile bulunur. nereden 0 olursa dosyanın başını, 1 o andaki konumu, 2 ise dosyanın sonunu belirtir. nereden kullanılmaz ise 0 olduğu varsayılır ve başvuru noktası olarak dosyanın başı alınır. >>> f=open('/tmp/workfile', 'r+') >>> f.write('0123456789abcdef') >>> f.seek(5) # Dosyadaki 5'inci bayta git >>> f.read(1) '5' >>> f.seek(-3, 2) # Sondan 3'uncu bayta git >>> f.read(1) 'd' Dosya ile işiniz bittiğinde f.close() yontemini cağırarak dosyayı kapatabilir ve dosyanın işgal ettiği sistem kaynaklarını serbest bırakabilirsiziz. f.close() cağrıldıktan sonra dosya uzerinde başka işlem yapmaya devam etmek mumkun değildir: >>> f.close() >>> f.read() Traceback (most recent call last): File "", line 1, in ? ValueError: I/O operation on closed file Dosya nesnelerinin isatty() ve truncate() gibi pek sık kullanılmayan başka yontemleri de vardır.
__________________
Python - Dosya Nesnelerinin Yontemleri
Programlama0 Mesaj
●35 Görüntüleme
- ReadBull.net
- Programlama ve Yazılım
- Programlama
- Python - Dosya Nesnelerinin Yontemleri