Isoqjanov Ilyos | Python
💡 #Python | for ... else — kam ishlatiladigan, lekin foydali konstruktsiya
Pythonda for sikliga else qo‘shish mumkin. Bu sikl break orqali to‘xtamasa — ya’ni normal tugasa — bajariladi.
for item in iterable:
if condition(item):
break
else:
handle_not_found()
🧩 Ishlash mexanizmi
• for → iteratorni aylantiradi (iter + next)
• Agar sikl StopIteration orqali tugasa → else bajariladi
• Agar break ishga tushsa → else o‘tilmaydi
⚙️ Amaliy misol
users = ["ali", "vali", "salim"]
for user in users:
if user == "nozim":
print("Topildi!")
break
else:
print("Foydalanuvchi topilmadi.")
🧠 else bloki qidiruv muvaffaqiyatsiz bo‘lganda ishlaydi — flag o‘zgaruvchi yozishning toza alternativasi.
🧠 Qachon ishlatish kerak?
• Qidiruv jarayonlarida (search, lookup)
• Loop tugash holatini aniq belgilashda
• flag yoki found kabi yordamchi o‘zgaruvchilarsiz kod yozishda
⚠️ Eslatma
for ... else kamdan-kam ishlatiladi, chunki ko‘p dasturchilar uni “sikl muvaffaqiyatsiz tugaganda else ishlaydi” deb noto‘g‘ri talqin qiladi.
Ammo to‘g‘ri joyda ishlatilsa — kodni yanada deklarativ va toza qiladi.
✅ Qisqa xulosa:
for-else = “Agar break bo‘lmasa, elseni bajar.”
🔍 Elegant qidiruv mantiqi uchun Pythonic yechim.
4 · 902 ·