8 Eylül 2008 yazan: rimbi
İşte size örnek bir fonksiyon tanımı
>>> def topla(a,b):
… return a + b
…
Fonksiyon tanımları def anahtar kelimesi ile başlıyor. Ardından fonksiyonun ismi ve parametreleri geliyor. Diğer bütün blok tanımlamalarında olduğu gibi satır : ile sonlanıyor. Fonksiyonun kendisine ait kodlar içeri girintili olarak yazılıyor.
Dikkat ederseniz nasıl değişkenleri tanımlarken tip belirtmiyorsak fonksiyon tanımlarken de geri dönüş değeri belirtmemiz gerekmiyor. Fonksiyonu çağırıp sonucunu görelim:
>>> print “3 + 5 = %d” % topla(3, 5)
3 + 5 = 8
>>>
Bir de şuna bakın:
>>> add=topla
>>> print add(4, 5)
9
>>>
Burada bir değişkene fonksiyon ataması yaptık. Artık add değişkenini de topla fonksiyonu gibi kullanılabilir kıldık. Python’ı esnek ve kullanımı kolay kılan özelliklerinden sadece biri bu.
Normal fonksiyon tanımlamaları dışında lambda fonksiyonları da tanımlamak mümkün. Mesela topla fonksiyonunu şu şekilde de ifade edebiliriz:
>>> topla = lambda a,b : a + b
>>> print topla(1, 2)
3
>>>
Lambda fonksiyonları tek satırlık, tek işlemlik fonksiyon tanımları için kullanılabilmektedir.
Fonksiyon içinde fonksiyon tanımlamak da mümkün:
>>> def topla_ve_yazdir(a, b):
… def yazdir(a, b, sonuc):
… print “%d + %d = %d” % (a, b, sonuc)
… yazdir(a, b, a + b)
…
>>> topla_ve_yazdir(5, 6)
5 + 6 = 11
>>>
Burada dikkat edilmesi gereken husus şudur: yazdir fonksiyonu sadece topla_ve_yazdir fonksiyonu içinden çağırılabilir.
Etiketler: fonksiyon, function, içiçe fonksiyon, lambda fonksiyonları, nested function
Başlangıç Seviyesi kategorisinde yayınlandı | 2 Yorum »
8 Eylül 2008 yazan: rimbi
Uncategorized kategorisinde yayınlandı | » yorum bırak;
7 Eylül 2008 yazan: rimbi
Python’da değişken tanımlamak oldukça basit:
>>> x = 3
Bu şekilde x değişkenine atama yaptığımız anda değişken tipini de tam sayı (integer) olarak belirlemiş oluyoruz. Söylediğimizi doğrulayalım:
>>> print x.__doc__
int(x[, base]) -> integer
Convert a string or number to an integer, if possible. A floating point
argument will be truncated towards zero (this does not include a string
representation of a floating point number!) When converting a string, use
the optional base. It is an error to supply a base when converting a
non-string. If the argument is outside the integer range a long object
will be returned instead.
Python’da tam sayı (integer), kayan-noktalı sayı (floating point number), karakter dizileri (strings) gibi bazı temel veri tipleri dışında çok kullanılan liste (list), sözlük (dictionary) ve tuple veri tipleri de mevcuttur. Ama bunlar başka yazıların konuları.
Etiketler: değişken, floating point, integer, karakter dizisi, kayan noktalı sayı, string, tam sayı, variable
Başlangıç Seviyesi kategorisinde yayınlandı | » yorum bırak;
7 Eylül 2008 yazan: rimbi
Karakter dizileri herhangi bir programlama dilinde muhtemelen en çok ihtiyaç duyulacak veri tiplerinin başında gelir. Python karakter dizileri oldukça kullanışlıdır.
Python’da değişken tipleri çalışma esnasında (run-time) belirlenmektedir. Mesela şunu uyguladığınızda
>>> str = “Merhaba”
ya da şunu
>>> str = ‘Merhaba’
bir karakter dizisi yaratmış ve bu karakter dizisine str (string kelimesinin kısaltması olarak yaygınca kullanılan bir değişken ismi) isimli bir değişken ile ulaşılabilmesini sağlamış oluyoruz. Bu şekilde str değişkeninin tipi karakter dizisi olarak atanmış oluyor. str değişkenin tipini ve bu tipe ait açıklamayı şu şekilde öğrenebiliriz:
>>> print str.__doc__
str(object) -> string
Return a nice string representation of the object.
If the argument is a string, the return value is the same object.
Bir karakter dizisinin uzunluğunu öğrenmek için len fonksiyonunu kullanıyoruz.
>>> len(str)
7
İki karakter dizisini birbirine iliştirmek için ise + işaretini kullanmak yeterli. Şöyle ki,
>>> str1 = “Merhaba “
>>> str2 = “dünya!”
>>> str3 = str1 + str2
>>> str3
‘Merhaba dünya!’
Uzun karakter dizilerini birden fazla satıra yamak da mümkün:
>>> str = ‘Bu karakter dizisi \
… birden fazla satira sigacak \
… kadar uzatildi’
>>>
Bunu yapmanın bir diğer yolu da “”" (3 bitişik tırnak işareti) kullanmak:
>>> str = “”"Bu karakter dizisi de
… birden fazla satira sigacak
… kadar uzatildi”"”
>>>
Etiketler: karakter dizisi, string
Başlangıç Seviyesi kategorisinde yayınlandı | 1 Yorum »
5 Eylül 2008 yazan: rimbi
Öncelikle merhaba. Burada sizlerle Python programlama dili ile ilgili deneyimlerimi paylaşmak istiyorum. Buradaki makalelerin pek çoğu Python’a yeni başlayanlar ve orta seviyeli Python kullanıcılarına hitap edecektir. Her ne kadar programlama yapmak için İngilizce’nin olmazsa olmaz olduğuna inansam da sitenin Türkçe kaynak eksikliğinin giderilmesi noktasında az da olsa faydalı olmasını temenni ediyorum.
Pyhton yorumlanan (interpreted) diller arasında yer alıyor. Yani yazdığınız kod bir yorumlayıcı tarafından yorumlanıp çalıştırılıyor. Derlenen diller gibi değil yani. Bu tür dillerde yazdığınız kod bir derleyici tarafından derlenip makine kodları içeren, çalıştırılabilir (executable) dosyalara dönüştürürler. (Çalıştırılabilir dosyaların windows’taki uzantısı .exe’dir.)
Python’u yüklediyseniz eğer (yüklemediyseniz buradan indirip yükleyebilirsiniz) komut satırından python.exe komutunu girerek Python yorumlayıcısını çalıştırabilirsiniz.

Satır başında gördüğünüz >>> işareti yorumlayıcının çalıştığını ve sizden komut beklediğini göstermektedir. Şimdi komut satırında
>>> print ‘Hello world!’
yazın. Burada karakter dizileri (strings) için ‘(kesme) işareti yerine “(tırnak) işareti de kullanabilirsiniz. Daha sonra aşağıdaki sonucu görmüş olmanız gerekiyor.

Tebrikler python ile ilk programınızı yazdınız. Bir sonraki yazıda görüşmek dileğiyle.
Başlangıç Seviyesi kategorisinde yayınlandı | 1 Yorum »