Loop else
Loop else అంటే ఏమిటి?
Pythonలో for లేదా while loop పూర్తిగా ముగిసిన తర్వాత ఒక else blockను execute చేయవచ్చు.
Loop సాధారణంగా పూర్తిగా ముగిస్తే else block execute అవుతుంది. కానీ loop మధ్యలో break వల్ల ఆగిపోతే, else block execute కాదు.
ఎందుకు ఉపయోగిస్తారు?
ఒక item దొరికిందా లేదా, ఒక సంఖ్య primeనా కాదా, search విజయవంతమైందా లేదా వంటి పరిస్థితులను సులభంగా తెలుసుకోవడానికి loop else ఉపయోగపడుతుంది.
ఎలా పనిచేస్తుంది?
- Loop ప్రతి iterationను execute చేస్తుంది.
- Condition true అయితే అవసరమైన సమయంలో break ఉపయోగించవచ్చు.
- Loop break లేకుండా పూర్తయితే else block execute అవుతుంది.
- break execute అయితే else block skip అవుతుంది.
Syntax
for item in sequence:
if condition:
break
else:
statement
ఇక్కడ else అనేది ifకు కాదు; అది loopకు సంబంధించినది. అందువల్ల indentation చాలా ముఖ్యమైనది.
Simple Explanation
ఒక listలో target number ఉందా అని వెతుకుతున్నామని అనుకోండి. Target దొరికితే break ఉపయోగించి loopను ఆపవచ్చు. Target దొరకకపోతే loop మొత్తం పూర్తవుతుంది. ఈ సందర్భంలో else block execute చేసి target దొరకలేదని తెలియజేయవచ్చు.
గుర్తుంచుకోవాల్సిన ముఖ్యమైన విషయం: loop break లేకుండా పూర్తయితే else execute అవుతుంది; break వల్ల ఆగితే else execute కాదు.
Real-Life Example
ఒక teacher విద్యార్థుల పేర్ల జాబితాలో ఒక ప్రత్యేకమైన పేరు ఉందా అని వెతుకుతున్నారని అనుకోండి. పేరు దొరికిన వెంటనే వెతకడం ఆపవచ్చు. పేరు దొరకకపోతే అందరి పేర్లు పరిశీలించిన తర్వాత, ఆ పేరు జాబితాలో లేదని చెప్పవచ్చు. ఈ పరిస్థితికి loop else సరిపోతుంది.
Code Examples
for loopలో item దొరకనప్పుడు else
numbers = [2, 4, 6, 8]
target = 5
for number in numbers:
if number == target:
print("Number found")
break
else:
print("Number not found")
ఈ code listలో target number ఉందా అని వెతుకుతుంది. Target 5 listలో లేదు కాబట్టి loop break లేకుండా పూర్తవుతుంది. అందువల్ల else block execute అవుతుంది.
Number not found
for loopలో item దొరికినప్పుడు break
numbers = [2, 4, 6, 8]
target = 6
for number in numbers:
if number == target:
print("Number found")
break
else:
print("Number not found")
ఈసారి target 6 listలో ఉంది. Loopలో 6 దొరికిన వెంటనే break execute అవుతుంది. కాబట్టి loop ఆగిపోతుంది మరియు else block execute కాదు.
Number found
Line-by-Line Explanation
ఈ lineలో numbers అనే list సృష్టించబడుతుంది. ఇందులో search చేయాల్సిన సంఖ్యలు నిల్వ ఉంటాయి.
ఈ lineలో వెతకాల్సిన సంఖ్యను target variableలో నిల్వ చేస్తుంది.
ఈ line listలోని ప్రతి numberను ఒక్కొక్కటిగా తీసుకుని loopను నడుపుతుంది.
ప్రస్తుత number targetతో సమానమా అని ఈ condition తనిఖీ చేస్తుంది.
Target దొరికినప్పుడు ఈ line messageను print చేస్తుంది.
Target దొరికిన వెంటనే loopను ఆపడానికి ఈ statement ఉపయోగించబడుతుంది.
Loop break లేకుండా పూర్తయితే ఈ else blockలోని code execute అవుతుంది.
Loopలో target దొరకకపోతే ఈ line target కనిపించలేదని print చేస్తుంది.
రెండవ ఉదాహరణలో వెతకాల్సిన సంఖ్యను 6గా మార్చుతుంది.
Try It
Try this Python code:
numbers = [3, 6, 9, 12]
target = 9
for number in numbers:
if number == target:
print("Found")
break
else:
print("Not found")
Practice
Practice: ఇచ్చిన numbers listలో target number ఉందా అని loop else ఉపయోగించి తనిఖీ చేయండి. Target దొరికితే Found అని, దొరకకపోతే Not found అని print చేయండి. target విలువను 25గా ఉంచండి.
Hint: Target దొరికినప్పుడు break ఉపయోగించండి. Loop పూర్తిగా break లేకుండా ముగిసినప్పుడు else blockలో Not found print చేయండి.
Practice: numbers = [5, 10, 15, 20] మరియు target = 15 ఉపయోగించి loop else code రాయండి. Target దొరికినప్పుడు Found అని print అవ్వాలి.
Hint: for loopలో ప్రతి numberను targetతో compare చేయండి.
Common Mistakes
Loop else కోసం else indentation, for లేదా whileతో సమానంగా ఉండాలి. అది if blockలో ఉండకూడదు.
Target దొరికినప్పుడు loopను ఆపాలంటే if blockలో break రాయాలి.
break వల్ల loop ఆగితే else execute కాదు. Break లేకుండా loop పూర్తయితేనే else execute అవుతుంది.
Loop తర్వాత ఉన్న else ప్రత్యేకమైన loop else. ఇది loop break లేకుండా పూర్తయిందా అని తెలుసుకోవడానికి ఉపయోగపడుతుంది.
Interview Questions
Pythonలో loop else అంటే ఏమిటి?
Answer: for లేదా while loop break లేకుండా పూర్తయినప్పుడు execute అయ్యే else blockను loop else అంటారు.
Loopలో break execute అయితే else block నడుస్తుందా?
Answer: లేదు. break వల్ల loop మధ్యలో ఆగితే else block execute కాదు.
Loop else ఎక్కడ ఉపయోగపడుతుంది?
Answer: Search operationలో item దొరకలేదని చెప్పడానికి, లేదా loop పూర్తిగా ముగిసిందని తెలుసుకోవడానికి loop else ఉపయోగపడుతుంది.
Loop elseలో indentation ఎందుకు ముఖ్యమైనది?
Answer: else loopకు సంబంధించినదని Pythonకు తెలియజేయడానికి అది for లేదా whileతో సమానమైన indentationలో ఉండాలి.
Exam Questions
ఈ code output ఏమిటి?
for number in [1, 2, 3]:
if number == 5:
break
else:
print(“Not found”)
Answer:
Output: Not found. ఎందుకంటే 5 listలో లేదు మరియు loop break లేకుండా పూర్తయింది.
ఈ code output ఏమిటి?
for number in [1, 2, 3]:
if number == 2:
print(“Found”)
break
else:
print(“Not found”)
Answer:
Output: Found. ఎందుకంటే 2 దొరికినప్పుడు break execute అవుతుంది. అందువల్ల else execute కాదు.
Loop else execute కావడానికి అవసరమైన పరిస్థితి ఏమిటి?
Answer:
Loop break వల్ల ఆగకుండా సాధారణంగా పూర్తవ్వాలి.
Quick Revision
- for మరియు while loopలకు else block ఉండవచ్చు.
- Loop break లేకుండా పూర్తయితే else execute అవుతుంది.
- break execute అయితే else execute కాదు.
- Search operationsలో loop else చాలా ఉపయోగకరం.
- Loop else indentation, loopతో సమానంగా ఉండాలి.
- else అనేది ifకు కాకుండా loopకు సంబంధించినదిగా ఉండవచ్చు.
