Giriş
Programlama dillerinin birincil işlevlerinden biri verilerle çalışmanıza yardımcı olmaktır. Buna veri yazma, okuma, depolama ve aktarma da dahildir. Python en popüler programlama dillerinden biridir. Python kullanmayı planlıyorsanız, farklı dosya türlerini nasıl kullanacağınız konusunda temel bir fikriniz olmalıdır. Dosya türlerinin en basiti txt veya düz metin dosyası biçimidir. Erişim kontrolü için kullanıcıları kontrol eden bir programınız olduğunu varsayalım. Listenin kendisi bir metin dosyası olarak kaydedilecektir. Dolayısıyla, belirli şirketler için başka bir program kullansanız bile, değerleri bir metin belgesinden çıkaracaksınız. Bu yüzden metin dosyası biçimini anlamak önemlidir.
Bu eğitimde, Python'daki temel dosya biçimleri hakkında kısa bir arka plan bilgisiyle başlıyoruz. Ardından programda metin dosyalarını nasıl açacağımızı, okuyacağımızı ve yazacağımızı keşfedeceğiz.
Başlamadan Önce…
Eğitime başlamadan önce yerine getirmeniz gereken bazı ön koşullar vardır. İlk olarak, halihazırda Python 3'ü kurmuş olmalısınız. Buna ek olarak, sisteminizde yerel bir programlama ortamına ihtiyacınız vardır. Bu eğitim Ubuntu 16.04 ve üzeri için geçerlidir, Debian 8, CentOS 7, Mac OS X ve Windows 10.
Dosya Biçimleri
Python'da kullanabileceğiniz çeşitli dosya biçimleri vardır. Aşağıdaki tabloda tüm farklı biçimler ve bunları nerede kullanabileceğiniz listelenmiştir:
| Dosya türü | Açıklama |
|---|---|
| txt | Düz metin dosyası, yalnızca karakterleri (veya dizeleri) temsil eden verileri depolar ve yapılandırılmış meta verileri hariç tutar. |
| CSV | Virgülle ayrılmış değerler dosyası, depolanan verileri yapılandırmak için virgül (veya diğer sınırlayıcıları) kullanarak verilerin bir tablo biçiminde kaydedilmesini sağlar. |
| HTML | Hiper Metin İşaretleme Dili dosyası, yapılandırılmış verileri depolar ve genellikle çoğu web sitesinde kullanılır. |
| JSON | JavaScript Nesne Gösterimi, verileri depolamak ve aktarmak için en yaygın kullanılan biçimlerden biri olmasını sağlayan basit ve verimli bir biçimdir. |
Bu eğitimde, txt dosya biçimini daha ayrıntılı olarak inceleyeceğiz.
Adım 1: Metin Dosyası Oluşturma
İlk olarak, Python'da yeni bir metin dosyası oluşturmalıyız. Anlaşılması amacıyla haftanın günleri için bir örnek ele alacağız. Bunun için metin düzenleyiciyi açacağız, yeni bir txt dosyası oluşturacağız ve adını days.txt koyacağız. Ardından, haftanın günlerini yeni dosyaya ayrı satırlar olarak girelim:
|
1 2 3 4 5 6 7 |
Pazartesi Salı Çarşamba Perşembe Cuma Cumartesi Pazar |
Artık içeriğe sahip olduğumuza göre dosyayı kaydedececeğiz. Dosyayı nereye kaydettiğinizi aklınızda tutmanız önemlidir. Diyelim ki kullanıcımız sammy olsun. Kullanıcı dosyayı şu yola kaydetti: /users/sammy/days.txt. Gelecekteki işlemlerde bu yolu kullanacağız.
Adım 2: Metin Dosyası Açma
Bir program yazmaya başlamadan önce, düzenleyicide bir dosya oluşturmalısınız. Adı files.py olan bir dosya oluşturacağız ve bunu /users/sammy dizinine, tıpkı days.txt dosyamız gibi kaydedececeğiz.
Herhangi bir dosyayı açmak için, disk dosyası ile değişken arasında bir bağlantı başlatmanız gerekir. Dosyayı 'açmak' bunu ifade eder. Dosyanın konumu, dosyanın yolu ile belirtilir. Dosyayı açmak için yola ihtiyacınız vardır. Örneğin, days.txt dosyasının yolu şöyledir: /users/sammy/days.txt. Ardından, bu verileri kaydetmek için bir dize (string) değişkeni oluşturacağız. Aşağıda göreceğiniz gibi, path değişkenini files.py betiğinde oluşturacağız ve değişkeni days.txt yoluna göre değiştireceğiz:
|
1 |
path = '/users/sammy/days.txt' |
Bundan sonra, open() işlevini kullanarak days.txt dosyasını açacağız. Bu işlev için dosya yolunu belirtmeniz gerekir. Diğer parametrelerin yanı sıra en önemlisi mod (mode) parametresidir. Bu, dosyayı açtığınız modu belirtmek için ekleyebileceğiniz isteğe bağlı bir dizedir. Aşağıda bazı mod seçenekleri verilmiştir:
'r’: okuma'w’: yazma'x’: yeni bir dosya oluşturma ve yazma'a’: bir dosyaya ekleme yapma'r+’: aynı dosyayı okuma ve yazma
Dosyadan yalnızca okuma yapmak için 'r’ modunu kullanmanız gerekir. open() işlevini çalıştırın ve days.txt dosyasını açın. Ardından, bunu days_file değişkenine atayın:
|
1 |
days_file = open(path,'r') |
Adım 3: Metin Dosyası Okuma
Dosyayı açtıktan sonra, değişken aracılığıyla dosyadan okuma yapabiliriz. Dosya okuma ile ilişkili üç işlem vardır. Gelin bu üç işlemi de inceleyelim.
İlk işlem <file>.read() işlemidir. Bu işlem, dosyanın tüm içeriğini tek bir dize (string) halinde gösterir:
|
1 |
days_file.read() |
Çıktı:
|
1 |
'Monday\nTuesday\nWednesday\nThursday\nFriday\nSaturday\nSunday\n' |
<file>.readline() işlemidir. Bu, size dosyadaki bir sonraki satırı gösterecektir. Esasen dosyayı satır satır okuyacaktır:|
1 |
days_file.readline() |
Çıktı:
|
1 |
'Monday\n' |
|
1 |
days_file.readline() |
Çıktı:
|
1 |
'Tuesday\n' |
<file>.readlines() işlemidir. Bu işlem size dosyadaki tüm satırların bir listesini gösterecektir. Her bir öge bir satırı temsil eder:|
1 |
days_file.readlines() |
Çıktı:
|
1 |
['Monday\n', 'Tuesday\n', 'Wednesday\n', 'Thursday\n', 'Friday\n', 'Saturday\n', 'Sunday\n'] |
Adım 4: Dosya Yazma
Sırada, yeni bir dosyanın nasıl yazılacağını öğreneceğiz. Örneğimizdeki bu dosya, önce başlığa (Days of the Week) ve ardından sırasıyla haftanın günlerine sahip olacak.
Başlamak için, title değişkenini oluşturmalıyız:
|
1 |
title = 'Days of the Week\n' |
Ardından, haftanın günlerini bir dize (string) değişkeni biçiminde kaydetmemiz gerekiyor. Bu değişkene days adı verilecek. Yukarıdaki adımlarda kullandığımız kodu kullanmaya devam edeceğiz. Dosyayı okuma modunda açacağız ve çıktıyı yeni days değişkenimizde saklayacağız:
|
1 2 3 |
path = '/users/sammy/days.txt' days_file = open(path,'r') days = days_file.read() |
Bu means that we have made variables for the title as well as the individual days of the week. Now we can write the file itself. The first step is to specify the file location using the directory /users/sammy/ dizinini kullanarak dosya konumunu belirtmektir. Dosya yolunda yeni dosyayı da belirteceksiniz: /users/sammy/new_days.txt. Konum yolu new_path değişkeni altında kalacaktır. Ardından, open() fonksiyonu ile dosyayı ‘w’ modunda açın:
|
1 2 |
new_path = '/users/sammy/new_days.txt' new_days = open(new_path,'w') |
Artık dosya açık olduğuna göre, <file>.write() yazma fonksiyonunu kullanarak veri girebilirsiniz. Burada tek bir dize (string) parametresi girmeniz gerekir. Yeni bir satıra geçmek istiyorsanız, yeni satır karakterini girin. Dosyamız için önce başlığı, ardından haftanın günlerini gireceğiz. Bunun yanı sıra, betiğin ilerlemesini takip etmek için bazı yazdırma (print) ifadelerimiz de olacak:
|
1 2 3 4 |
new_days.write(title) print(title) new_days.write(days) print(days) |
Adım 5: Dosya Kapatma
Dosyayı kapattığınızda, disk dosyası ile dosya değişkeni arasındaki bağlantıyı sonlandırmış olursunuz. Dosya kapatıldığında, diğer programlar tarafından erişilebilir hale gelir. Bu aynı zamanda dosyanın ve verilerinin güvende kalmasına da yardımcı olur. Bu nedenle, dosyalarla işlem yapmayı bitirdiğinizde her zaman dosyaları kapatmayı unutmayın. Bunu yapmak için <file>.close() fonksiyonunu kullanabilirsiniz:
|
1 2 |
days_file.close() new_days.close() |
Böylece Python'da dosyaların işlenmesi konusu tamamlanmış oluyor.
Adım 6: Kod Kontrolü
Son olarak, kodu kontrol edeceğiz. Bunu yazdığınız kodu çalıştırmadan önce yapmalısınız. Kod şuna benzer görünmelidir:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
path = '/users/sammy/days.txt' days_file = open(path,'r') days = days_file.read() new_path = '/users/sammy/new_days.txt' new_days = open(new_path,'w') title = 'Days of the Week\n' new_days.write(title) print(title) new_days.write(days) print(days) days_file.close() new_days.close() |
Kodu kaydettikten sonra Python betiğini çalıştırmanız gerekir. Bunun için terminali açmalısınız:
|
1 |
$ python files.py |
Aşağıdaki çıktıyı gösterecektir:
|
1 2 3 4 5 6 7 8 9 |
Haftanın Günlerithe Week Pazartesi Salı Çarşamba Perşembe Cuma Cumartesi Pazar |
Kodunuzu kontrol etmek için şu yeni dosyayı açacaksınız: new_days.txt. Her şey yolundaysa aşağıdakileri göreceksiniz:
|
1 2 3 4 5 6 7 8 9 |
Haftanın Günlerithe Week Pazartesi Salı Çarşamba Perşembe Cuma Cumartesi Pazar |
Yukarıdakine benzer bir şey görüyorsanız adımları başarıyla tamamladınız demektir.
Sonuç
Bu eğitimle size Python 3'teki temel dosya biçimlerini öğretmeyi amaçladık. Bunlar arasında en kritik olanlardan biri metin dosyası biçimidir. Bunu daha ayrıntılı olarak inceledik. Artık veri dosyalarını açma, okuma, yazma ve kapatma işlemlerini ve adımlarını gayet iyi biliyorsunuz. Bu bilgileri kullanarak, kendi Python programlama deneyiminizde metin dosyası biçimini etkili bir şekilde kullanabileceksiniz.
Python'da düz metin dosyalarıyla nasıl çalışacağınızı öğrendiğinize göre, Python'ı kullanmaya başlamanızı sağlayacak blogumuzdaki diğer bazı eğitimler şunlardır:
- Python 3 Dize Biçimlendiricilerini Kullanma
- Python 3'te Döngüler: Break, Continue ve Pass İfadelerini Kullanma
- Python 3: Veri Türlerini Dönüştürme Kılavuzu
- Scrapy ve Python 3 ile Bir Web Sayfası Nasıl Taranır
Keyifli Kodlamalar!
Yorumlar
Henüz yorum yapılmamış. İlk siz olun.