Ne Öğreneceğiz
- Python'da
for
döngüsü - Python'da fonksiyonlara giriş
Gereksinimler
- Python(Github)
- Herhangi bir işletim sistemi
Zorluk Seviyesi
- Orta
Eğitim İçeriği
Eğitimimize for
döngüsü ile devam ediyoruz. for
döngüsü aslında while
'a çok benzer, yine döngüleme işlemlerinde kullanılır fakat biraz farklıdır. Bu daha çok listelemeye yönelik kullanılır. Mesela bir kelimenin harflerini listelemek, veya bir listenin içerisinde ki değerleri listelemek gibi amaçlarda for
döngüsünü kullanırız.
Basit bir örnekle başlayalım, örneğimiz şöyle olsun;
sayilar = [1,2,3,4,5,6]
for sayi in sayilar:
print(sayi)
Baktığımızda, sayilar
diye bir liste oluşturduk, daha sonra
for
sayiin
sayilar:
diyerek, for komutu ile sayi değişkenini sayilar içerisinde sırayla listedeki değerlere eşitledik. print(sayi)
diyerek de bu çıktıları ekrana yazdırdık. Sonuç:
Mesela şimdi de bir kelimenin içerisinde ki harfleri yazdıralım, bunun için de bir str değişkeni atayalım ve for değişken içerisindeki değerleri sırayla abc değişkenine atayıp çıktı alalım.
kelime = "cryptoadamc"
for abc in kelime:
print(abc)
Sonucumuz:
Gördüğümüz gibi for ile bu şekilde listede ki değerleri ve stringde ki harfleri sıralayabiliyoruz.
Mesela, utopian kelimesinde i harfine geldiği zaman program dursun;
for k in "utopian":
print(k)
if k=="i" :
break
Gördüğünüz gibi i harfine gelince programımız durdu.
For döngüsü genel hatlarıyla bu şekilde kullanılıyor, aşağıda fonksiyonlara giriş yaptığımızda for döngüsünü iyice anlayacaksınız, birlikte anlatmamın nedeni iç içe olmaları ve pekiştirerek, anlaşılması daha kolay bir hal almasıdır.
Python'da Fonksiyonlar
Fonksiyon Nedir ?
Fonksiyonu kısaca tanımlamaya çalışırsak; programımızda aynı kodlamayı farklı yerlerde kullanmak isteyebiiriz, mesela dizi elemanlarının birbirleri ile çarpıldığı bir kodu, programımızda 3 farklı yerde kullanacağız. İşte bunun için aynı kodları tekrar tekrar yazmak yerine, dediğimiz çarpma işlemi kodlarını bir fonksiyona tanımlıyoruz ve artık tekrar o kodları yazmak yerine tanımladığımız fonksiyonu kullanabiliyoruz. Basitleştirerek örnekleyecek olursak, değişkene nasıl değer atıyorsak, fonksiyona da kod parçacığı atıyoruz. Ne olduğunu öğrendiğimize göre yavaş yavaş nasıl işlediğine geçelim.
Fonksiyon nasıl tanımlanır ?
Python dilinde fonksiyon tanımlamak için def
komutu kullanılır. Sonrasında ise fonksiyon ismi yazılır, ve o fonksiyon adı altında ki işlemler(kodlama) artık o fonksiyonun kimliği olur. Yani artık nereye çağrılırsa o işlemi yapar.
def
sayac():
Burada fonksiyonumuzun ismi sayac()'dır.
Basit olarak örnekleyecek olursak;
def sayac():
sayilar = [1,2,3]
for i in sayilar:
print(i)
sayac()
dediğimizde;
Görüldüğü gibi def
sayac(): ile fonksiyonumuzu başlatıyoruz ve sayac() ile başladığımız fonksiyonu bitirmemiz ve sınırlarını belirlememiz gerekiyor. Belirli bir sınır içerisinde olacak ki başka biyerde fonksiyonumuzu çağırdığımız zaman hangi kodların çalışacağı da belli olsun. Burada for
döngüsü ile sayıları listeledik mesela, artık sayac() fonksiyonunu her çağırdığımızda bu işlemi yapacaktır bize.
Başka bir örnek ile devam edelim;
Yukarıda ki örneği biraz açalım:
Bu sefer fonksiyonumuzun içerisine bir değişken atadık def
sayac(numara) şeklinde, daha sonra for
döngüsü ile 1 'den numara 'ya kadar saydırma yaptık.
Gördüğünüz gibi şuana kadar numara diye bir değişken yok ortada, dedik ki kullanıcıdan isteyelim bu sayıyı. Bir int input'u oluşturduk ve kullanıcıdan bir sayı girmesini istedik. Girilen bu sayıyı aldık ve fonksiyonda numara yerine kullandık.
Sonuç olarak 1'den başladı ve girilen numaraya kadar saydı.
Hemen altında ise, yazdırdığımız metinden sonra sayac(numara) yerine istediğimiz sayıyı kod yazdık. Yani kullanıcıdan değilde belirlediğimiz sayıya göre işlem yapsın dedik, bu yüzden;
sayac(3)
yazdık ve yukarıda anlattığımız sayma işlemini 1'den manuel olarak yazdığımız 3'e kadar yaptı.
Başka bir örnek yaparak konumuzu sonlandıralım, mesela kullanıcının girdiği sayının tek veya çift olduğunu söyleyen bir program yapalım;
Şimfi öncelikle mantığımızı kuralım, bir sayı 2'ye tam bölünüyorsa çifttir ve kalan 0'dır. Eğer 2'ye tam bölünmüyorsa ve kalan 0'dan farklı ise tek sayıdır. Buna göre sırasıyla programımızı yazalım,
Öncelikle fonksiyon kalıbımızı ve, tek veya çift olunca fonksiyonumuz ne yapacağını belirleyelim;
def tek():
print (sayi,"tek sayıdır.")
def cift():
print(sayi,"çift sayıdır.")
Burada sayi
değişkeninin tek veya çift olması durumunda ekrana yazılacak ifadeleri fonksiyon ile belirtik, fakat henüz ortada sayi ve diğer işlemler yok, devam edelim.
sayi = int(input("bir sayı girin: "))
if sayi % 2 == 0:
cift()
else:
tek()
input ile kullanıcıdan sayı girmesini istedik ve daha sonra girilen sayıyı 2'ye böldürüp kalanına baktık. (Not: % operatörü, bu işlevi görmektedir.) Sonucun 0 olması durumunda çift sayı fonksiyonuna yönelttik, aksi durumda tek sayı fonksiyonuna. Daha sonra yukarıda fonksiyonda belirlediğimiz işlemler yapıldı. (Tek sayı durumunda print ile x tek sayıdır, çift sayı durumunda, x çift sayıdır diye ekrana yazdırdı.)
Sonuç:
Bu örneğimiz ile dersimizin sonuna gelmiş olduk, bir daha ki dersler de görüşmek üzere.
Selametle.
Önce ki Dersler
Python 3 - Giriş ve Programlama Dili Mantığı | Ders 1
Python Değişkenler ve Listeler (Diziler) | Ders 2
Python'da if (eğer), elif ve else Fonksiyonları | Ders 4
Posted on Utopian.io - Rewarding Open Source Contributors
@cryptoadamc, I always try to support who contribute to open source project, upvote you.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Thank you for the contribution. It has been approved.
You can contact us on Discord.
[utopian-moderator]
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Hey @cryptoadamc I am @utopian-io. I have just upvoted you!
Achievements
Suggestions
Get Noticed!
Community-Driven Witness!
I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!
Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit