Bu derste neler öğreneceksiniz?
Desen kelimesini duyduğunuzda aklınıza ne geliyor? Desen, bir şeyin veya bir dizi şeyin sırayla tekrarlanmasıdır. Hepimiz daha önce desenler görmüş olabiliriz; örneğin renk sanatlarında, müzikte ve hatta matematikte.
Benzer şekilde, kodda da kalıplar olabilir. Bir programcı olarak, bilgisayarın belirli kod satırlarını sırayla tekrarlamasını isteyeceğiniz zamanlar olacaktır. Bilgisayarınızın birçok kez tekrarlamasını istediğiniz bir kod bloğu varsa, kullanmak isteyebileceğiniz araç bir fonksiyondur.
Öğreneceksin
- Kodda fonksiyon kullanmanın faydası.
- Bir fonksiyon nasıl tanımlanır ve çağrılır.
- Bir fonksiyondaki parametreler.
Python’da Matematiksel Fonksiyonlar
Fonksiyon, tek bir belirli eylemle sonuçlanan bir dizi adımdan oluşan bir kod bloğudur. Programcı bu eyleme basit bir ad verir. Bir fonksiyona basit bir ad vermek, adım kümesinin programda kolayca konuşulup tekrar tekrar kullanılma olasılığını artırır.
Örnek

Fonksiyonlar, aşağıdakilere ait olarak kategorize edilebilir:
- Modüller
- Yerleşik
- Kullanıcı Tanımlı
Modül
Modül, Python tanımlarını (yani fonksiyonlarını) ve ifadelerini içeren bir dosyadır. Python’un standart kütüphanesi, bir programcıya modül(ler) olarak genişletilebilir. Modüldeki tanımlar, bir programın kodunda kullanılabilir. Bir programcının bu modülleri programda kullanabilmesi için modülü içe aktarması gerekir. Bir modülü içe aktardıktan sonra, kodunuzda herhangi bir fonksiyonuna veya değişkenine başvurabilir (kullanabilirsiniz).
İçe aktarma, kodumuzda modülleri kullanmanın en basit ve en yaygın yoludur. Sözdizimi şöyledir:
modüladı1’i içe aktar [,modüladı2, ———]
Örnek
import math
Bu ifadenin yürütülmesi üzerine Python,
- “ math.py ‟ dosyasını arayın .
- Modül tanımının ve değişkeninin oluşturulacağı alanı oluşturun,
- Daha sonra modüldeki ifadeleri yürütün.
Artık modül tanımları, modülün içe aktarıldığı kodun bir parçası haline gelecektir. Bir fonksiyonu kullanmak/erişmek/çağırmak için, modül adını ve fonksiyonun adını nokta (.) ile ayırarak belirteceksiniz. Bu biçime nokta gösterimi de denir .
deger= math.sqrt (25) # 25in karekökünü alır
Örnek, parantez içinde verilen değerin karekökünü hesaplamak ve değerine eklenen sonucu döndürmek için math modülünün sqrt() fonksiyonunu kullanır . Parantez içinde yazılan ifade (değişken), argüman (gerçek argüman) olarak bilinir. Fonksiyonun argümanlar alıp sonucu döndürdüğü yaygın bir ifadedir.
Matematik Modülü
Matematik modülünde bulunan diğer fonksiyonları inceleyelim :
| Fonksiyonun adı | Tanım | Örnek |
|---|---|---|
| ceil(x) | x’ten küçük olmayan en küçük tam sayıyı döndürür, burada x sayısal bir ifadedir . | math.ceil(-45.17) >>-45.0 math.ceil(100.12) >>101.0 math.ceil(100.75) >>101.0 |
| floor( x ) | x’ten büyük olmayan en büyük tam sayıyı döndürür, burada x sayısal bir ifadedir . | matematik.kat(-45.17) >>-46.0 matematik.kat(100.12) >>100.0 matematik.kat(100.75) >>100.0 |
| fabs( x ) | x’in mutlak değerini döndürür, burada x sayısal bir değerdir . | matematik.fabs(-45.17) >>45.17 matematik.fabs(100.12) >>100.12 matematik.fabs(100.75) >>100.75 |
| exp(x) | x’in bir üstel değerini döndürür: ex, burada x sayısal bir ifadedir . | math.fabs(-45,17) >>2,41500621326e-20 math.fabs(100,12) >>3,03084361407e+43 math.fabs(100,72) >>5,52255713025e+43 |
| log(x) | x > 0 olduğunda x’in doğal logaritmasını döndürür, burada x sayısal bir ifadedir . | matematik.log(100.12) >>4.60636946656 matematik.log(100.72) >>4.61234438974 |
| log10(x) | x > 0 için x’in 10 tabanlı logaritmasını döndürür, burada x sayısal bir ifadedir . | matematik.log(100.12) >>2.00052084094 matematik.log(100.72) >>2.0031157171 |
| pow( x, y ) | x ve y sayısal ifadeler olmak üzere x’in y kuvvetinin değerini döndürür . | math.pow(100, 2) >>10000.0 math.pow(100, -2) >>0.0001 math.pow(2, 4) >>16.0 math.pow(3, 0) >>1.0 |
| sqrt( x ) | x > 0 için x’in karekökünü döndürür, burada x sayısal bir ifadedir . | matematik.sqrt(100) >>10.0 matematik.sqrt(7) >>2.64575131106 |
| cos(x) | x’in sayısal bir ifade olduğu radyan cinsinden x’in kosinüsünü döndürür | matematik.cos(3) >>-0.9899924966 matematik.cos(-3) >>-0.9899924966 matematik.cos(0) >>1.0 matematik.cos(matematik.pi) >>-1.0 |
| sin(x) | Radyan cinsinden x’in sinüsünü döndürür, burada x sayısal bir değer olmalıdır. | matematik.sin(3) >>0.14112000806 matematik.sin(-3) >>-0.14112000806 matematik.sin(0) >>0.0 |
| tan ( x ) | X’in radyan cinsinden tanjantını döndürür, burada x sayısal bir değer olmalıdır. | math.tan(3) >>-0.142546543074 math.tan(-3) >>0.142546543074 math.tan(0) >>0.0 |
| degrees(x) | x açısını radyandan dereceye dönüştürür, burada x sayısal bir değer olmalıdır. | matematik.dereceler(3) >>171.887338539 matematik.dereceler(-3) >>-171.887338539 matematik.dereceler(0) >>0.0 |
| radians( x ) | x açısını dereceden radyana dönüştürür, burada x sayısal bir değer olmalıdır. | matematik.radyanlar(3) >>0,0523598775598 matematik.radyanlar(-3) >>-0,0523598775598 matematik.radyanlar(0) >>0,0 |
Yerleşik Fonksiyonlar
Yerleşik fonksiyonlar, Python’a entegre edilmiş ve bir programcı tarafından erişilebilen fonksiyon(lar)dır. Bunlar her zaman kullanılabilir durumdadır ve bunları kullanmak için herhangi bir modül (dosya) içe aktarmamız gerekmez. Python, çoğu fonksiyon modüllere bölündüğü için küçük bir yerleşik fonksiyon kümesine sahiptir. Bu, temel dilin kesinliğini korumak için yapılmıştır.
| İsim | Tanım | Örnek |
|---|---|---|
| abs(x) | x ile sıfır arasındaki mesafeyi döndürür, burada x sayısal bir ifadedir. | abs(-45) >>45 abs(119) >>119 |
| maks( x, y, z, …. ) | Argümanlarının en büyüğünü döndürür: x, y ve z sayısal değişkenler/ifadelerdir. | maks(80, 100, 1000) >>1000 maks(-80, -20, -10) >>-10 |
| min( x, y, z, …. ) | Argümanlarının en küçüğünü döndürür; burada x, y ve z sayısal değişkenler/ifadelerdir. | dk(80, 100, 1000) >>80 dk(-80, -20, -10) >>-80 |
| cmp( x, y ) | İki sayının farkının işaretini döndürür: x < y ise -1, x == y ise 0 veya x > y ise 1, burada x ve y sayısal değişken/ifadedir. | cmp(80, 100) >>-1 cmp(180, 100) >>1 |
| yuvarlak( x [, n] ) | Ondalık noktadan itibaren n basamağa yuvarlanmış float x değerini döndürür; burada x ve n sayısal ifadelerdir. n verilmezse, x 0 ondalık basamağa yuvarlanır. | yuvarla(80.23456, 2) >>80.23 yuvarla(-100.000056, 3) >>-100.0 yuvarla (80.23456) >>80.0 |
Kompozisyon
Kompozisyon, basit fonksiyonları birleştirerek daha karmaşık fonksiyonlar oluşturma sanatıdır; yani bir fonksiyonun sonucu, bir diğerinin girdisi olarak kullanılır.
Örnek
fn1 ve fn2 olmak üzere iki fonksiyonumuz olduğunu varsayalım,
a= fn2 (x)
b= fn1 (a)
daha sonra iki fonksiyona yapılan çağrı şu şekilde birleştirilebilir:
b= fn1 (fn2 (x))
Kullanıcı Tarafından Tanımlanan Fonksiyonlar
Şimdiye kadar yalnızca Python ile birlikte gelen fonksiyonları (modül) veya yorumlayıcının kendisinde (yerleşik) gördük; ancak bir programcının kendi fonksiyonlarını yazması da mümkündür. Bu fonksiyonlar daha sonra bir modül oluşturmak üzere birleştirilebilir ve bu modüller içe aktarılarak diğer programlarda kullanılabilir.
Bir fonksiyonu tanımlamak için def anahtar sözcüğü kullanılır. Anahtar sözcükten sonra, bir tanımlayıcı (yani fonksiyonun adı), ardından parantez içinde parametre listesi ve satırı sonlandıran iki nokta üst üste gelir. Ardından, fonksiyonun parçası olan ifadelerin bloğu gelir.
İfade bloğu
Bir blok , yürütülürken tek bir büyük ifade dizisi olarak ele alınacak şekilde gruplandırılmış bir veya daha fazla kod satırıdır.
Python’da, blok içindeki ifadeler girintili olarak yazılır. Genellikle bir blok, bir satır girintili olduğunda (dört boşluk) başlar ve bloğun tüm ifadeleri aynı girinti seviyesinde olmalıdır. Blok içindeki bir blok, ilk ifadesi dört boşluk, yani sekiz boşluk girintili olduğunda başlar. Bir bloğu bitirmek için, bir sonraki ifadeyi blok başlamadan önce aynı girinti ile yazın.
Fonksiyonun sözdizimi
def NAME ([PARAMETRE1, PARAMETRE2, …..]): #Köşeli parantezler
ifadeleri içerir #ifadenin isteğe bağlı kısmı
Dünyayı selamlamak için bir fonksiyon yazalım:
def sayHello ():
print “Hello World!”
- Fonksiyon tanımının ilk satırı, yani 1 numaralı satıra başlık, geri kalanına, yani örneğimizdeki 2 numaralı satıra ise gövde denir .
- Fonksiyonun adı sayHello’dur ve parantezlerin boş olması herhangi bir parametre olmadığını gösterir.
- Fonksiyonun gövdesi, ekranda bir dize sabiti görüntüleyen bir Python ifadesi içerir.
Bir fonksiyon tanımlamak, aynı ada sahip bir değişken oluşturur, ancak herhangi bir sonuç üretmez. Fonksiyonun gövdesi yalnızca fonksiyon çağrıldığında/çağrıldığında yürütülür. Fonksiyon çağrısı , (çalıştırılan) fonksiyonun adını ve ardından parantez içinde değer listesini (yani argümanları) içerir. Bu argümanlar, LHS’deki parametrelere atanır.
sayHello() # fonksiyon çağırıldı.
Ekranda aşağıdakileri üretecektir
Selam Dünya!