# # Python For Döngüsü

Python programlama dilinde bir liste, demet, sözlük, küme, string veya belirlediğiniz iki sayı arasında döngü oluşturmak istediğinizde **for** terimini kullanırsınız. Programlama da önemli bir yeri olan **for** için örnek kullanımları hemen görelim. Öncelikle bir **string** için döngü oluşturalım.

```python
isim = "Blog"

for x in isim:
    print(x)

# B
# l
# o
# g
```

Örnekte gördüğünüz gibi isim değişkenimizi for döngüsüne sokarak her bir karakter boyunca döngümüz devam eder. Bu döngü esnasında karakterler **x** değerine atanır. Şimdi de **liste** üzerinde bir örnek görelim.

```python
liste = ["Ankara","İstanbul","Kayseri"]

for sehir in liste:
    print(sehir)

# Ankara
# İstanbul
# Kayseri
```

## 1. İki Sayı Arasında Döngü Oluşturmak

Nasıl ki listelerimiz, demetlerimiz üzerinde rahatça döngümüzü oynatabiliyorsak, belirlediğimiz iki sayı arasında da döngü ayarlayabiliriz. Örneğin bir döngüyü sadece 5 kere döndürmek istediğinizde **range()** fonksiyonunu kulanabilirsiniz:

```python
for i in range(1,6):
    print("♥"*i)

# ♥
# ♥♥
# ♥♥♥
# ♥♥♥♥
# ♥♥♥♥♥
```

Unutmayınız, **range(x,y)** fonksiyonu **x** sayısından başlar, **y** sayısına kadar sayı üretir. **y** sayısı dahil değildir. Sadece **range(x)** fonksiyonunu kullanırsak döngü **0** ve **x** arasında döner. **x** yine dahil değildir.

```python
for i in range(3):
    print("Sayı: " + str(i))

# Sayı: 0
# Sayı: 1
# Sayı: 2
```

Dahası, **range(x,y,z)** fonksiyonu ile **x** ve **y** arasındaki sayıları yazdırırken sayıların kaçar kaçar büyüyeceğini **z** ile belli edebiliriz.

```python
for i in range(1,15,3):
    print(i)

# 1
# 4
# 7
# 10
# 13
```

## 2. For Döngüsünü Durdurma

Döngümüz ilerlerken istediğimiz bir durumda durdurabilmek için **break** komutunu kullanırız. Python **break** komutunu gördüğünde döngüyü durdurarak döngüden çıkar.

```python
for i in range(10):
    if i == 4:
        break
    print(i)

# 0
# 1
# 2
# 3
```

## 3. For Döngüsünde Atlama Yapmak

Döngümüzü bir koşul ile durdurabileceğimizi gördük. Şimdi ise yine bir koşul ile döngüde ki o durumu atlayabiliriz ve döngünün diğer aşamasına geçebiliriz. Bunun için **continue** terimini kullanabiliriz.

```python
for i in range(10):
    if i % 2 == 0:
        continue
    print(i)

# 1
# 3
# 5
# 7
# 9
```

Örnekte çift sayıları atlayarak sadece tek sayıları ekrana yazdırdık.

## 4. Boş Döngü Döndürmek

Bazı durumlarda döngüyü sadece döndürmek ve herhangi bir işlem, ekran çıktısı yapmak istemeyebilirsiniz. Bu durumlar içinde **pass** terimini rahatlıkla kullanabilirsiniz.

```python
for i in [0, 1, 2]: 
    pass
```

Eğer boş döngülerde **pass** terimini kullanmazsanız hata alırsınız.

## 5. Döngü Bitince Komut Çalıştırmak

Şimdiye kadar döngüyü durdurmayı, döngüden çıkmayı ve atlamayı gördük. Şimdi ise döngümüz bittiğinde nasıl komut çalıştıracağımızı göreceğiz.

```python
for sayi in range(2):
    print(sayi)
else:
    print("Döngü bitti!")

# 0
# 1
# Döngü bitti!
```

## Döngü bitti!

Koşul durumlarında kullandığımız **else** ifadesi, döngülerde de kullanılarak döngünün bittiği durumu tanımlar.
