İPUCU

Python Artificial Intelligence’da en çok kullanılan dildir ve gerekli dökümanların paylaşım alanlar burada paylaşılmaktadır.

Seçenekler

Döngülerde else

Gbmdpof - ait Kullanıcı Resmi (Avatar)
Kıdemli Yazılımcı
Üyelik tarihi:
09/2016
Mesajlar:
1.998
Konular:
157
Teşekkür (Etti):
197
Teşekkür (Aldı):
712
Ticaret:
(0) %
29-06-2018 19:42
#1
Döngülerde else
Merhaba. Dün bir yazıyı okurken karşıma for-else kullanımı geldi. İlk başta daha önce hiç görmediğim için bunun bir hata olduğunu, if-else yazılmak istendiğini düşündüm ama sonrasında böyle bir kullanımın da olduğunu anladım. Sonrasında da çok kullanılmadığı için çoğu kişinin bilmediğini düşündüğüm için bu konuyu açmaya karar verdim. Ayrıca bu kullanımın varlığını bilen kişiler için bile kafa karıştırıcı olabilir, bu yüzden bilen kişilere de faydalı olabilir.

Bu kullanım genelde if koşullarındaki else kullanımı ile karıştırılıyor. Farklarını bir örnek ile açıklayalım:


Kod:
In [1]: if True:
   ...:     print('1')
   ...: else:
   ...:     print('0')

1

In [2]: for i in [1]:
   ...:     print(i)
   ...: else:
   ...:     print('Done!')

1
Done!
Evet, görebileceğiniz gibi iki else de aynı gibi gözüküyor. Bu yüzden insanların iki durumda da else'in atlanmasını beklemesi oldukça normal fakat örnekte de görüldüğü gibi bu yanlış. Döngülerde else kullandığımızda, yapılan iş bittikten sonra çalıştırılacak kodu ifade ediyoruz.

Bunun aynısını while döngüsünde de kullanabiliriz. Yine döngü sonunda else içinde yazılan kod çalıştırılacakır.

Hata Yakalarken else

Hata yakalarken de işimiz bittiğinde yapacağımız işlem için else kullanabiliyoruz fakat finally varken neden else? Çünkü else, sadece hiçbir hata olmazsa çalışıyor. finally ise ne olursa olsun çalışıyor.


Yararlanılan Kaynaklar:
docs.python.org
python-notes.curiousefficiency.org
stackoverflow.com
---------------------
~humanity is overrated~
PALA, Hacknology, M3m0ry, BufGix, Mapzilla, Sessizer Teşekkür etti.
nefeskesen06 - ait Kullanıcı Resmi (Avatar)
Tamamen Forumdan Uzaklaştırıldı
Üyelik tarihi:
05/2018
Nereden:
TEŞKİLAT
Yaş:
29
Mesajlar:
511
Konular:
105
Teşekkür (Etti):
298
Teşekkür (Aldı):
120
Ticaret:
(0) %
29-06-2018 19:45
#2
Teşekkürler Hocam.
Hacknology - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
10/2015
Nereden:
rm -rf /
Mesajlar:
2.710
Konular:
151
Teşekkür (Etti):
947
Teşekkür (Aldı):
1234
Ticaret:
(0) %
29-06-2018 19:51
#3
Muazzam bir konu. Ellerine sağlık
---------------------
I surrender my soul
Odin hear my call

flag{Bur4si_b1r_0yun_park1}

hacknology@hacknologyroot:~/
manymous - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
03/2018
Nereden:
Azerbaijan
Mesajlar:
39
Konular:
12
Teşekkür (Etti):
12
Teşekkür (Aldı):
13
Ticaret:
(0) %
29-06-2018 19:56
#4
Ellerine sağlık

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler

Yetkileriniz
Sizin Yeni Konu Acma Yetkiniz var yok
You may not post replies
Sizin eklenti yükleme yetkiniz yok
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodları Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı