Bu bölüme gelinceye kadar Python programlama dilindeki karakter dizisi, liste ve dosya adlı veri tiplerine ilişkin epey söz söyledik. Artık bu veri tiplerine dair hemen hemen bütün ayrıntıları biliyoruz. Ancak henüz öğrenmediğimiz, ama programcılık maceramız açısından mutlaka öğrenmemiz gereken çok önemli bir konu daha var. Bu önemli konunun adı, karakter kodlama. Hatırlarsanız önceki derslerimizde karakter […]
Python Ders 36 | Basit Bir İletişim Modeli
Bu bölümde, bilgisayarların çalışma mantığını, verileri nasıl işlediğini, sayılarla karakter dizilerini nasıl temsil ettiğini daha iyi ve daha net bir şekilde anlayabilmek için basit bir iletişim modeli kuracağız. 8 Bitlik bir Sistem Hatırlarsanız ikili sayma sisteminde 0’lar ve 1’lerin oluşturduğu her bir basamağa ‘bit’ adını veriyorduk. Bit kelimesi İngilizcede ‘binary’ (ikili) ve ‘digit’ (rakam) kelimelerinin birleştirilmesi ile üretilmiştir. […]
Python Ders 35 | İkili (Binary) Dosyalar
Dosyalar çoğunlukla iki farklı sınıfa ayrılır: Metin dosyaları ve ikili dosyalar. Eğer bir dosyayı bir metin düzenleyici ile açtığınızda herhangi bir dilde yazılmış ‘okunabilir’ bir metin görüyorsanız, o dosya bir metin dosyasıdır. İkili dosyalar ise, metin dosyalarının aksine, metin düzenleyicilerle açılamayan, açılmaya çalışıldığında ise çoğunlukla anlamsız karakterler içeren bir dosya türüdür. Resim dosyaları, müzik dosyaları, […]
Python Ders 34 | Dosyaların Metot ve Nitelikleri
Dosyalara ilişkin olarak bir önceki bölümde anlattığımız şeylerin kafanıza yatması açısından size şu bilgiyi de verelim: Dosyalar da, tıpkı karakter dizileri ve listeler gibi, Python programlama dilindeki veri tiplerinden biridir. Dolayısıyla tıpkı karakter dizileri ve listeler gibi, dosya (file) adlı bu veri tipinin de bazı metotları ve nitelikleri vardır. Gelin isterseniz bu metot ve niteliklerin […]
Python Ders 33 | Temel Dosya İşlemleri
Biz bu bölümde, dosya girdi/çıktısı konusuna ilişkin bildiklerimizi bir adım öteye götüreceğiz ve gerçek anlamda dosyaları nasıl manipüle edeceğimizi öğreneceğiz. Python programlama dilinde dosyalarla uğraşırken bütün dosya işlemleri için temel olarak tek bir fonksiyondan yararlanacağız. Bu fonksiyonu siz zaten tanıyorsunuz. Fonksiyonumuzun adı open(). Dosya Oluşturmak Dediğimiz gibi, Python programlama dilinde dosya işlemleri için open() adlı bir fonksiyondan yararlanacağız. […]
Python Ders 32 | Sayılar ve Metotları
Buraya gelene kadar, sayılar konusunda epey şey söyledik aslında. Mesela biz Python’da üç tür sayı olduğunu biliyoruz: Tam Sayılar (integers) Kayan Noktalı Sayılar (floating point numbers veya kısaca floats) Karmaşık Sayılar (complex numbers) Mesela şunlar birer tam sayıdır: Şunlar birer kayan noktalı sayıdır: Şunlarsa birer karmaşık sayıdır: Ayrıca şimdiye kadar öğrendiklerimiz sayesinde bu sayıların çeşitli fonksiyonlar yardımıyla […]
Python Ders 31 | Sayma Sistemlerini Birbirine Dönüştürme
Sıklıkla kullanılan dört farklı sayma sistemini öğrendik. Peki onlu sistemdeki bir sayıyı ikili sisteme nasıl çevireceğiz? Python programlama dilinde bu tür işlemleri kolaylıkla yapmamızı sağlayan birtakım fonksiyonlar bulunur. Ayrıca özel fonksiyonları kullanmanın yanısıra karakter dizisi biçimlendirme (string formatting) yöntemlerini kullanarak da sayma sistemlerini birbirine dönüştürebiliriz. Biz burada her iki yöntemi de tek tek inceleyeceğiz. Fonksiyon […]
Python Ders 30 | Sayma Sistemleri
Sayma işleminin hangi ölçütlere göre yapılacağını belirleyen kurallar bütününe sayma sistemi adı verilir. Dünyada yaygın olarak kullanılan dört farklı sayma sistemi vardır. Bunlar, onlu, sekizli, on altılı ve ikili sayma sistemleridir. Bu dördü arasında en yaygın kullanılan sayma sistemi ise, tabii ki, onlu sistemdir. Onlu Sayma Sistemi Biz insanlar genellikle hesap işlemleri için onlu sayma […]
Python Ders 29 | Demetlerin Metotları
Listelerin metotlarını incelediğimize göre, artık demetlerin metotlarına bakabiliriz. Geçen bölümde de söylediğimiz gibi, listeler ve demetler birbirine benzer. Aralarındaki en önemli fark, listelerin değiştirilebilir bir veri tipi iken, demetlerin değiştirilemez bir veri tipi olmasıdır. Elbette bu fark, iki veri tipinin metotlarında da kendini gösterir. Demetler üzerinde değişiklik yapamadığımız için, bu veri tipi değişiklik yapmaya yarayan […]
Python Ders 28 | Listelerin Metotları
Hatırlarsanız bir veri tipinin hangi metotlara sahip olduğunu görmek için dir() fonksiyonundan yararlanıyorduk. Bu listede bizi ilgilendiren metotlar ise şunlardır: append() metoduyla başlayalım… append() append kelimesi İngilizcede ‘eklemek, ilave etmek, iliştirmek’ gibi anlamlara gelir. append() metodunun görevi de kelime anlamıyla uyumludur. Bu metodu, bir listeye öğe eklemek için kullanıyoruz. Mesela: Bu metot, yeni öğeyi listenin en sonuna ekler. Hatırlarsanız bir önceki […]
Python Ders 27 | Listeler ve Demetler – 2
Liste Üreteçleri (List Comprehensions) Şimdi Python’daki listelere ilişkin çok önemli bir konuya değineceğiz. Bu konunun adı ‘liste üreteçleri’. İngilizce’de buna “List Comprehension” adı veriliyor. Adından da anlaşılacağı gibi, liste üreteçlerinin görevi liste üretmektir. Basit bir örnek ile liste üreteçleri konusuna giriş yapalım: Burada 0’dan 1000’e kadar olan sayıları tek satırda bir liste haline getirdik. Aslında […]
Python Ders 26 | Listeler ve Demetler
Bu bölüme gelene kadar yalnızca iki farklı veri tipi görmüştük. Bunlardan biri karakter dizileri, öteki ise sayılardı. İşte biz bu bölümde iki farklı veri tipi daha öğreneceğiz. Bu bölümde ele alacağımız veri tiplerinin adı ‘liste’ (list) ve ‘demet’ (tuple). Listeleri ve demetleri incelemeye listelerden başlayalım… Listeler Listeleri tanımaya, bu veri tipini nasıl tanımlayacağımızı öğrenerek başlayalım. […]
Python Ders 25 | f-string
Daha önceki bölümlerde format() fonksiyonuyla karakter dizilerini nasıl biçimlendirebileceğimizi görmüştük. 3.6 sürümü ile Python’a eklenen f-string yapısı da buna benzer bir şekilde çalışıyor. Öncelikle format() fonksiyonunu nasıl kullandığımızı hatırlayalım: format() fonksiyonumuz kendisine verdiğimiz değerleri kapsama alanı içerisinde uygun yerlere yerleştirir. Hatırlarsanız format() fonksiyonunu ilgilendiren kısımları süslü parantezlerin içine yazıyorduk. Yukarıdaki örneği şu şekilde de yapabiliriz: Bu sefer […]