30 Mart 2010 Salı

Python open(),write(),close(),readline(),read(),readlines(),writelines() Dosya Fonksiyonlarına Ait Işlemler

degisken=open(“path”,”açma modu”);
Eğer dosya varsa w veya wr ile açarsanız öncekini siler yeni bir tane oluşturur.
Eğer dosya yoksa yeni bir tane oluşturur.Açma modu r veya rw ile açarsanız 
bu durumda dosyanın önceden oluşturulmuş olması gerekir.Yani r ile açtığımda 
dosya yoksa hata verir.Yenisini oluşturmaz.r demek reader yani okuma
modunda açar.Veri yazmak içinse w modunda açmalısınız.yani rw modu hem okuma
hem de açma modunda açabiliriz.Eğer dosyada verileriniz varsa ve var olanın 
sonuna bir şeyler yazmak istiyorsanız a modu ile açmak lazım.
dosyaDegisnkeni=open(“./dosyaIsmi.txt”,”wr”);
dosyaDegiskeni=open(“./dosyaIsmi.txt”,”a”) dosyadaki verileri silmez ve var olan verilerin
sonuna ekleme yapar.Eğer dosya yoksa bu açma modu a olanda yeni dosya oluşturulur.
Genelde bu kullanılır tabi birlikte de kullanabiliriz.
Not:Bu şeklişde dosya yolunu belirtirseniz Prdus'ta 
/home/Ethem yani ev dizinin altında oluşturulur.Tüm python yani .py dosyalarınızda
bu dizindedir.ya da path belirtmeden direkt
>>> dosya=open("dosyaismi4.txt","a")
şeklinde de ev dizinin altında oluşturulur.Python default olarak ev dizni kullanır.
Dikkat eğer a ile açarsanız dosya yoksa dosyayı oluşturur.
Yani /home/Ethem pardus 2009 da Ev dizini klasörü masaüstünde var.Tıklarsanız direkt ev dizinine gider.
>>> dosyaYolu=open("./dosyaismi3.txt","a")
>>> str="Bu cumleyi dosyaya yaz";
>>> dosyaYolu.write(str)
a çma modu ile dosyayı açtık.Eğer dosya yoksa oluşturur.Varsa direkt dosyanın sonuna eklemeye başlar.Mesela biz str stringini dosyaya yazdırdık.
>>> dos=open("./isim.txt","a")
>>> dos.write("Merhaba")
BU değer dosyaya yazılmaz çünkü dosya oluşturulmamış.
>>> dos=open("./isim.txt","a")
yukarda dosya oluşturuldu ve burda da dosyayı açma moduyla açtık
>>> dos.write("Merhaba")
merhaba yı dopsyay yazdık.
Prdus ta console ekranına python yazıp direkt pythona giriyorsunuz.
Ama kod derleme felan console de olur.Pythonun içinden consoleye çıkmak içinse 
Ctrl+d ye basmanız lazım.Consoleyi temizlemek içinse clear kullanılır.
Note2: Doyaya yazma işlemi gerçekleşmesi için dosyayı kapatmanız gerekir.
Ya da başka bir uygulama kullanıp tekrar dosyaya gelmek.Ama pratiklik açısından
yaptığınız her güncellemeden sonra dosyayı kapatın.
>>> doY=open("./isim.txt","a");
>>> doY.write("Bu ilk cumledir");
>>> doY.write("\nBu ikinci cumledir");
>>> doY.close();
Dosya varsa sonuna ekle yoksa oluştur ve sonuna ekle.
\n ile ikinci cümlenin alt satıra yazmasını sağladık.
DosyaIsmi.close() de var olan dosyayı kapatır.
>>>k=0
>>> for k in dOku:
...  print k;
...
Bu ilk cumledir
Bu ikinci cumledir
isim.txt dosyamızı r moduyla açtık ve k isminde bir değişken tanımladık
for i in dosyaDegiskeni:
	print i;
ile dosyamızı okuduk bunun yerine
>>> satir=1;
>>> dosya=open("./isim.txt","r");
>>> while satir:
...  satir=dosya.readline();
...  print satir;
...
Bu ilk cumledir
Bu ikinci cumledir
şeklinde de atir atir okuma işelmini while ile gerçekleştirebiliriz.
>>> dosya=open("./isim.txt"); bu şekilde yani
“r” belirtilmezse default olarak okuma modunda dosyayı açar.
Başka bir pratik yol ise 
>>> print open("./isim.txt").read()
Bu ilk cumledir
Bu ikinci cumledir
yani dosyayı aç ve read() ile hepsini olkuyup ekrana bas.
read() metodu dosyayı hepsini okur ve bir değişkene aktarır.Tabi buırda print ile
direk ekrana bastık.
>>> open("./isim.txt","a").write("\nBu dosyay yazilan ucuncu satirdir.")
>>> print open("./isim.txt").read()
Bu ilk cumledir
Bu ikinci cumledir
Bu dosyay yazilan ucuncu satirdir.
A modu ile dosyayı açtık ve write() yani open().write() ile dosyaya 
direkt yazabiliriz.Bu tür pratikler değişken tanımlamaktan kurtatırır.
>>> isListesi=["Mehmet","Ethem","SULAN"]
>>> open("./isim.txt","a").writelines(isListesi)
listeyi dosyay yazdırdık.
>>> sozluk={"anahtar":"deger"}
>>> open("./isim.txt","a").writelines(sozluk)
>>> liste=open("./isim.txt","r").readlines()
dosyanın tamamını bir listeye okur.liste ismindeki değişken
şu an tüm dosya bilgilerini içinde barındırır.
>>> print open("./isim.txt").read(10)
Bu ilk cum
dosyadan 10 byte yani 10 karekterlik değeri okuyup ekrana yazdık
	Dosya Fonksiyonlari
write(a)--> acumlesini dosyaya yazar.
writelines(pythonDegiskeni)-->Herhangi bir python değişkenini yazdırabiliriz.
readline()-->Dosyadan bir satir okur.
readlines()-->Dosyanın içeriğini listeye okur.
read(a)-->a bytelık değeri okur.Ikinci bir okumada bulunduğu yerden başlar.Bu pratiklik kazandırır.
read()-->Dosyanın tamamını bir cümle değişkenine okur.
close()-->Dosyayı kapatır.

Hiç yorum yok:

Yorum Gönder