Bu makelemizde Python'da değişken nasıl tanımlanır ve yaygın kullanılan veri tiplerinden bahsedeceğiz.
Python'da yazdığımız şeylerin(verilerin) örneğin bir yazı gibi yada bir sayı gibi, türleri vardır. Bunlardan en yaygın 3 tanesi string, integer ve floattır.
String, bizlerin '(tek tırnak) yada "(çift tırnak) içine sarmaladığımız şeylerdir.
Örnek:
"Oğuzhan", 'oğuzhan', '5' = String
Integer tırnak içerisine koymadığımız tam sayılardır.
Örnek:
1,2,3,-1,-2,6 = Integer
Float, tırnak içerisine koymadığımız noktalı sayılardır.
Örnek:
1.2, 2.5, -1.2 = Float
Artı(+) operatürünü iki adet sayı arasına(float yada integer tipli veri) koyduğumuzda, Python otomatik olarak bu değerlerin toplanılması gerektiğini anlayıp matematiksel olarak buna toplama cevabını veriyor.
Peki artı operatörünü biz iki string arasına koyarsak ne olacaktır?
Python sağa ve sola bakıp bunlar string diyip stringler matematikteki gibi toplanamaz diyip otomatik olarak birleştirecektir.
Örnek:
'oğuzhan' + 'çelikarslan' yazıp interaktif shell üzerinde entera basarsak bu otomatik olarak. oğuzhançelikarslan olarak yorumlanacaktır.
Çarpı(*) iki adet sayı arasına(float yada integer tipli veri) koyduğumuzda, Python otomatik olarak bu değerlerin çarpılması gerektiğini anlayıp matematiksel olarak buna çarpma cevabını veriyor.
Peki çarpı operatörünü biz iki string arasına koyarsak ne olacaktır?
Python sağa ve sola bakıp bunlar string diyip stringler matematikteki gibi çarpılamaz diyip otomatik olarak hata verecektir. Burada şu durumda vardır. Eğer bir string ile bir integerı çarpmaya kalkarsanız Python otomatik olarak bu sayı kere o yazıyı tekrarlayacaktır.
Örnek:
'oğuzhan' * 5 ifadesinin yorumlanması aşağıdaki gibi olacaktır.
'oğuzhanoğuzhanoğuzhanoğuzhanoğuzhan'
(Yukarıda ki ifadeyi elimle yazmaya üşendiğim için interaktif shell üzerinde kod ile yaptım nede olsa yazılımcı olmak bunu gerektirir değil mi :)).
Bizler uygulama içerisinde yazmış olduğumuz ifadeler yorumlandıktan sonra bu değerleri saklamak isteriz ki programın içerisinde tekrar tekrar kullanabilelim.
İşte bu gibi durumlarda yardımımıza değişkenler koşuyor. Değişkenlere biz bir değer veriyorum değişken ise bu değeri bilgisayarın hafızasında depoluyor. Daha sonraları biz bu değişkene seslendiğimizde, bilgisayar gidiyor bellekten bu değeri alıyor ve getiriyor.
Değişkenlerin daha sonları çağırılmak üzere bir isimleri olur.
Bu isimlerin seçiminde bazı kurallar vardır.
- Değişken isimleri rakam yada sayı ile başlayamaz.
- Değişken isimleri tırnak, - veya $ gibi özel karakterleri içeremez.
- Değişken isimi 2 kelimeden oluşuyorsa araya boşluk bırakılamaz.
- İllaki rakam kullanmak istiyorsak "isim1" gibi sonda veya ortada kullanabiliriz.
- İki kelimeden oluşuyorsa isimSoyisim veya isim_soyisim şeklinde tanımlamalar yapabiliriz. İlk stile camel case, ikinci stilede snake_case denilmektedir.
Öncelikle seçilebilir bir değişken ismi seçiyoruz ardından = koyarak içerisine yerleştirmek istediğimiz veriyi koyuyoruz.
Örnek:
isim = 'Oğuzhan'
Python yukarıda ki ifadeyi direkt olarak string olarak algılayacaktır. Çünkü tırnak ifadeleri içine aldık. Python'da diğer bazı dillerde olduğu gibi değişkenler için tip belirtmek zorunda değiliz.
Örnek:
sayi = 10
Yukarıda ki tırnak işaretleri içersinde olmadığı ve noktalı sayı olmadığı için otomatik olarak float olarak algılanacaktır.
Aynı değişken ismine tekrardan bir atama yaparsanız Python otomatik olarak eski değeri devre dışı bırakacaktır.
isim = 'Tayfun'
Yukarıda ki ilk kodda isim Oğuzhana eşitti daha sonra isim ifadesi Tayfuna eşit oldu. Bu durumda isim ifadesini interaktif şele yazıp entera basmış olsaydık ekrana Tayfun ifadesi yazacaktı.
int(), str() gibi float() gibi bazı yardımcı fonksiyonlar sayesinde bizler tanımlamış olduğumuz değişkenlerin tiplerini değiştirebiliriz.
Örnek:
sayi = 10 bir integer tipinde değişkendir. str(sayi) dediğimizde artık bu ifade bir string ifadeye dönüşmüştür ve artık '10' şeklinde temsil edilir.
Bir başka örnekle sayi = 10 ifadesini float(sayi) içerisine alırsak bu durumda artık bu ifade 10.0 olarak bir noktalı sayıya dönüşmektedir.
Bu yardımcı fonksiyonlar çok işimize yarayacaktır.
Uyarı: Değişken isimleri seçerken içerdiği veriyi ifade edecek şekilde seçilmelidir. Örneğin isim yazıp içerisinde float bir sayı tutulmamalıdır. Eğer bir değişkenin ismi, isim olarak belirtilmişse bu durumda bu değişkenin içerisinde oğuzhan, tayfun vb değerler tutulmalıdır. Bu sayede kodunuzun hem okunabilirliği daha kolay olacak hemde ileride dönüp kodunuza baktığınızda daha kolay anlayıp hataları düzeltebileceksiniz.