04
Python dan temel veri türleri ile dinamik-statik tür kavramı
Tür bir nesnenin bellekte ne kadar yer kapladığını tanımlar. İçerisine hangi tür formatta bilgilerin depolanacağını ve nesnenin hangi operatörler ile işleme sokulacağını belirten bilgilerden oluşur. Programlama ortalama temel veri türü olarak 10 tür bulunur. Python’da buna göre çok az tür vardır. Bu durumda Python’ı biraz daha kolaylaştırıyor.
Python’da toplamda 6 tür vardır.
- Int, İşaretli tamsayı türü. Python’da int türünün bir sınırı yoktur. (long int, short int gibi türler yoktur, işaretli ve işaretsiz olarak ayrılmaz ve her zaman işaretlidir.). Bellekte int türü limitsizdir. Bu yüzden bellekte kapladığı alan da interpreter’ın nasıl davrandığına göre değişkendir.
- Float, IEEE 754 Standardının 8 byte’lık gerçek sayı formatını (long real format) belirtmektedir. Float sözcüğü floatering point sözcüğünden kısaltmadır. Noktalı sayıları tutmak için kullanılır. Python’daki float türü diğer C, C++, Javadaki double türüne denk gelmektedir.
- Bool, Bu tür True ya da False biçiminde belirtilen ikil bilgileri tutmaktadır. Programlama dillerinin coğunda bulunmaktadır.
- Str, Yazıları tutan string türüdür. Str türünden bir sabit elde etmek için (yazı elde etmek) tek tırnakla ya da iki tırnak kullanılabilir. Python’da tek bir karakteri tutan Char diye bir tür yoktur.
- NoneType, Python’da özel bir NoneType türü vardır. Bu tür None anahtar sözcüğü ile temsil edilmektedir. None boş değer anlamına gelir.
- Complex, Python’da karmaşık sayı türü de vardır. i sayısı j ile temsil edilmektedir. Mühendislik işlemelerde pek çok yerde kullanılıyor fakat çok da fazla kullanımımız olmayabilir. Matematikteki karmaşık sayıları temsil ettiği söylenebilir.
Not: type(12312312) yazıldığında parantez içindeki türün tuttuğu objenin türünün bilgisini verir.
Python dinamik tür sistemine sahip olan bir dildir.
Statik veri türlerinde, bir değişkenin türünü Derleyici’ye önce belirlersiniz ve derleyici sonra bunu kullanır, derleyici bu tür için bir bellekte yer ayırır ve bu tür bir daha değişmez. Bu türlerde ben kullanacağım bak türü şu olacak dediğimiz duruma deklarasyon denir. Bu duruma sahip dillere statik tür sistemi denir.
Dinamik tür sistemlerinde (Python) bir bildirim, deklarasyon işlemi yoktur. Bu değişkenler her türü tutabilmektedir. Program akarken değişkenin türü sabit değildir. Bellekte ayrılan alan akış sırasında değişik türlere ve alanlara ihtiyaç duyduğu için bellek yönetimini interpreter ‘lar pointer yöntemini kullanarak yönetir.

Python’da diğer programlama dillerinde olduğu gibi entry point görevini yapan bir fonksiyon yok. Mesela C programlar main() den çalışmaya başlar. Python’ da böyle değil kodlar yukarıdan aşağıya çalışmaya başlar.
Değişken isimleri numeric karakterler ile başlatılamaz, çünkü interpreter bunu değiken mi sabit mi anlamakta zorluk çekecektir.
Değişkenler için isim uzunluğu sınırlaması yoktur. Sınırlama interpreter’lar tarafından sınırlandırılır ve sınırlandırma interpreter’a göre değişiklik gösterir, aslında ilk 128 karakterini dikkate alırlar değişkenin isminin sonrasında ne yazdığına bakmazlar.
3’lü versiyonlarda değişken isimlerinde değişken isimlerinde Türkçe karakter kullanılabilir. Malumunuz değişkenlerde boşluk kullanılamaz. Sözcükleri ayırmak için genelde python adabında değişkenleri “_” ile ayırıyorlar ve genelde değişken isimlerinin tamamı küçük harflerden oluşur. “agri_dagi_yuksekligi” gibi örneklendirilebilir.
Python Kaynak kodu unicode-UTF8’dir.
Python’da Sabitler(Literals)
Doğrudan yazılmış olan sayılara ve yazılara sabit denir.
- Nokta içermeyen tamsayı biçimde yazılmış sabitler int türündendir. Büyük sayıları daha iyi anlatmak için sabitlerin arasına “_” kullanılabilir. Örn: a=10_000_000_000 gibi tanımlama yapılabilir. Yan yana “__” yasaktır.
- Sayı ‘.’ içeriyorsa sabit float türündendir. Bir sayının sonunda “.” varsa bu float olarak kabul edilir.
- Bool türden sabitler True, False olarak iki türdendir.
- String türünden sabitler tek tırnak ya da çift tırnak ile belirtilebilir. Non-printable karakterler için aşağıdaki gibi “\” kullanarak planlayabiliriz. “”” nadiren kullanılan üç tırnak bu şekilde de string yazılabilir, “”” üç tırnağın farkı metninizi tek satırda yazmak zorunda olmazsınız.
- \a Alert
- \b Back space
- \f form feed
- \n new line
- \r cariage return
- \t tab
- \v vertical tab
Python’da tek satırlık yorunlar # işareti ile yapılır çok satırlı yorumlar yine “”” YORUM “”” şeklinde yapılabilir, bu string’in bir değişkene atanmaması bir problem oluşturmaz.
Kaynaklar:
C ve Sistem Programcıları Derneği (CSD) – Kaan ASLAN