if-elif-else Statement in Python क्या है?
Table of Contents
Introduction to if-elif-else Statement in Hindi
Python में जब हमें सिर्फ दो possibilities (True/False) से आगे बढ़कर, दो से ज़्यादा options में से किसी एक को select करना हो, तो इसके लिए
if-elif-elseStatement का इस्तेमाल किया जाता है।elifदरअसल "else if" का short form है, यानी अगर पहली condition False निकलती है, तो Python अगलीelifcondition को check करता है, और यह सिलसिला तब तक चलता रहता है जब तक कोई condition True न मिल जाए या सारी conditions खत्म न हो जाएं।यह Statement उन situations के लिए बहुत उपयोगी है जहां एक ही variable या expression के आधार पर कई अलग-अलग categories में बांटना हो, जैसे marks के आधार पर grade decide करना (A, B, C, D, F)।
एक ज़रूरी बात यह है कि
if-elif-elsechain में एक बार में सिर्फ एक ही block execute होता है — जैसे ही कोई condition True मिलती है, बाकी सारी बची हुई conditions को बिना check किए ही skip कर दिया जाता है।elseblock को हमेशा सबसे आखिर में लिखा जाता है, और इसकी कोई condition नहीं होती — यह तभी execute होता है जब ऊपर की सारीifaurelifconditions False निकलें।यह ध्यान रखना भी ज़रूरी है कि एक
ifblock के साथ कितने भीelifblocks लिखे जा सकते हैं, लेकिनelseblock पूरे structure में सिर्फ एक बार ही लिखा जा सकता है, और वह भी सबसे अंत में।Exam की दृष्टि से इसकी सरल परिभाषा याद रखनी हो तो: "The if-elif-else statement allows a program to check multiple conditions in sequence and execute only the block corresponding to the first condition that evaluates to True; if none are True, the else block executes."
अगर हम इसे
if-elseसे compare करें, तोif-elseसिर्फ दो रास्तों (True या False) के बीच choose करता है, जबकिif-elif-elseउससे कहीं आगे बढ़कर एक साथ कई अलग-अलग categories या situations को handle करने की सुविधा देता है — यही वजह है कि real-world programs में इसका उपयोग बहुत ज़्यादा होता है, जैसे grading systems, menu-based programs, या traffic signal simulation।यह भी समझना ज़रूरी है कि Python में
switch-caseजैसा कोई अलग statement built-in नहीं होता (कम से कम पुराने versions में), इसलिए जिन languages मेंswitchका उपयोग होता है, Python में उसी काम के लिए अक्सरif-elif-elseही इस्तेमाल किया जाता है।
Syntax of if-elif-else Statement in Hindi
Basic Syntax:
if condition1:
statement(s)
elif condition2:
statement(s)
elif condition3:
statement(s)
else:
statement(s)Har part ka matlab:
if condition1सबसे पहले check होती है। अगर यह False निकले, तो Pythoncondition2को check करता है, फिरcondition3को, और अगर इनमें से कोई भी True न निकले, तो अंत मेंelseblock execute हो जाता है।Colon aur Indentation:
if, हरelifऔरelse— तीनों keywords के बाद colon (:) लगाना अनिवार्य है, और हर block के अंदर के statements को समान indentation (आमतौर पर 4 spaces) में लिखना ज़रूरी है।Simple Example:
marks = 72
if marks >= 90:
print("Grade A")
elif marks >= 75:
print("Grade B")
elif marks >= 60:
print("Grade C")
else:
print("Grade F")यहाँ
marks = 72है, तो पहली दो conditions False निकलेंगी, तीसरी condition (marks >= 60) True निकलेगी, इसलिए output "Grade C" आएगा।elif की Flexibility:
Syntax में सिर्फ एकifऔर एकelseहोना चाहिए, लेकिनelifblocks की संख्या पूरी तरह programmer की ज़रूरत पर निर्भर करती है — चाहे 1 हो या 10, structure valid रहेगा, बसifसे शुरू होकर optionallyelseपर खत्म होना चाहिए।else के बिना भी Syntax Valid है:
अगर किसी program में सिर्फ specific conditions ही handle करनी हों और "बाकी सब" के लिए कुछ करने की ज़रूरत न हो, तोelseblock को पूरी तरह हटाया भी जा सकता है, structure तब भी सही रहेगा।if x == 1:
print("One")
elif x == 2:
print("Two")
# yahan else zaroori nahi hai
Working of if-elif-else Statement in Hindi
Python सबसे पहले
ifवाली condition को check करता है। अगर यहTrueनिकलती है, तो सिर्फifblock execute होता है, और बाकी की सारीelif/elseconditions को बिना check किए ही ignore कर दिया जाता है।अगर
ifवाली conditionFalseनिकले, तो Python अगलीelifcondition को check करता है — यह process एक-एक करके सभीelifblocks पर तब तक चलता रहता है जब तक कोई एक conditionTrueन मिल जाए।जिस moment कोई condition
Trueमिल जाती है, सिर्फ उसी से जुड़ा हुआ block execute होता है, और उसके बाद Python पूरेif-elif-elsestructure से बाहर निकलकर आगे के code पर चला जाता है।अगर
ifऔर सभीelifconditions False निकलें, तभी सबसे आखिर में लिखा हुआelseblock execute होता है — यह हमेशा एक तरह का "बाकी सारी situations के लिए default" block होता है।यह समझना ज़रूरी है कि conditions हमेशा ऊपर से नीचे, यानी sequence में ही check होती हैं — इसलिए conditions को सही order में लिखना काफी महत्वपूर्ण होता है, खासकर जब वे एक-दूसरे को overlap करती हों।
एक interesting बात यह भी है कि जैसे ही कोई condition True मिल जाती है, Python बाकी की सारी नीचे वाली conditions को evaluate ही नहीं करता — इससे थोड़ा performance benefit भी मिलता है, खासकर तब जब conditions खुद कोई heavy calculation कर रही हों।
यही वजह है कि experienced programmers सलाह देते हैं कि सबसे ज़्यादा likely (common) होने वाली condition को structure में सबसे ऊपर रखा जाए, ताकि ज़्यादातर मामलों में program को बहुत सारी unnecessary conditions check न करनी पड़ें।
अगर conditions एक-दूसरे को overlap करती हों (जैसे
marks >= 60aurmarks >= 75दोनों 80 के लिए True हो सकती हैं), तो हमेशा सबसे specific ya सबसे बड़ी value वाली condition को पहले लिखना चाहिए, ताकि सही category select हो सके।
Example Programs in Hindi
-
Example 1: Number Positive, Negative ya Zero है, यह check करना
num = -5
if num > 0:
print("Number Positive hai")
elif num < 0:
print("Number Negative hai")
else:
print("Number Zero hai")यहाँ
num = -5है, इसलिए पहली condition False और दूसरी condition (num < 0) True निकलेगी, output होगा "Number Negative hai"। -
Example 2: Grade System बनाना
marks = 88
if marks >= 90:
grade = "A"
elif marks >= 75:
grade = "B"
elif marks >= 60:
grade = "C"
else:
grade = "F"
print("Aapka grade:", grade)marks = 88होने की वजह से दूसरी condition (marks >= 75) True निकलेगी, इसलिए output आएगा "Aapka grade: B"। -
Example 3: Simple Calculator बनाना
a = 10
b = 5
op = "-"
if op == "+":
print(a + b)
elif op == "-":
print(a - b)
elif op == "*":
print(a * b)
else:
print("Invalid operator")यहाँ
op = "-"होने की वजह से दूसरी condition True निकलेगी, और output5print होगा (10 - 5)। -
Example 4: Season Determine करना Month के आधार पर
month = "July"
if month in ["December", "January", "February"]:
print("Winter Season")
elif month in ["March", "April", "May"]:
print("Summer Season")
elif month in ["June", "July", "August", "September"]:
print("Monsoon Season")
else:
print("Autumn Season")month = "July"तीसरी condition में match करता है, इसलिए output आएगा "Monsoon Season"। -
Example 5: Traffic Signal Simulate करना
signal = "Yellow"
if signal == "Red":
print("Ruk jaiye")
elif signal == "Yellow":
print("Taiyar ho jaiye")
elif signal == "Green":
print("Chal sakte hain")
else:
print("Invalid signal")यहाँ
signal = "Yellow"होने की वजह से दूसरी condition True निकलेगी, इसलिए output आएगा "Taiyar ho jaiye" — यह example दिखाता है कि कैसेif-elif-elseएक साथ कई discrete states को साफ-सुथरे तरीके से handle करता है।
Nested if Statements in Hindi
जब किसी
if,elifयाelseblock के अंदर एक औरifstatement (यानी एक पूरा नया conditional structure) लिखा जाता है, तो उसे Nested if Statement कहा जाता है।इसका उपयोग तब होता है जब पहली condition True होने के बाद भी, किसी उससे जुड़ी हुई दूसरी condition को अलग से check करने की ज़रूरत हो — यानी एक "condition के अंदर condition" वाली situation।
Nested if को समझने के लिए एक real-life example लें — किसी college में admission के लिए पहले यह check होता है कि marks sufficient हैं, और अगर हाँ, तो उसके अंदर एक और condition check होती है कि उस student की category (General/Reserved) के हिसाब से cutoff match करता है या नहीं।
Example: Nested if से Login System बनाना
username = "admin"
password = "admin123"
if username == "admin":
if password == "admin123":
print("Login Successful")
else:
print("Galat Password")
else:
print("Galat Username")यहाँ पहले outer
ifusername check करता है, और सिर्फ तभी innerifpassword check करता है जब username पहले से ही सही हो — इसी वजह से यहाँ output "Login Successful" आएगा।Nested if Statements का उपयोग करते समय indentation का विशेष ध्यान रखना पड़ता है, क्योंकि हर nested level के साथ indentation एक step और बढ़ जाती है, और थोड़ी सी गलती पूरी logic को बदल सकती है।
ज़्यादा गहराई तक nesting (जैसे 4-5 levels) करने से बचना चाहिए, क्योंकि इससे code पढ़ने और समझने में मुश्किल हो जाता है — ऐसे मामलों में
andजैसे Logical Operators से conditions को combine करना ज़्यादा clean approach माना जाता है।Nested if aur if-elif-else में मुख्य फर्क यह है कि if-elif-else एक ही level पर कई मुख्य विकल्पों (options) में से चुनता है, जबकि Nested if तब उपयोग होता है जब एक option के अंदर भी कोई sub-condition check करनी हो — यानी दोनों concepts अक्सर साथ मिलकर भी इस्तेमाल किए जाते हैं, जैसे किसी grading system में पहले subject select करना (if-elif-else), फिर उस subject के अंदर marks range check करना (nested if)।
एक अच्छा programmer हमेशा यह ध्यान रखता है कि जहां possible हो, वहां nested if की जगह Logical Operators (
and,or) से एक ही combined condition बनाकर code को flat aur readable रखा जाए, क्योंकि बहुत ज़्यादा nesting debugging को भी मुश्किल बना देती है।
Difference Between elif and else in Hindi
| Point | elif | else |
|---|---|---|
| Condition | Apni khud ki alag condition hoti hai | Koi condition nahi hoti |
| Execution | Sirf tabhi run hota hai jab uski condition True ho | Tabhi run hota hai jab upar ki saari conditions False hon |
| Count in Structure | Ek if ke saath multiple elif ho sakte hain | Ek structure mein sirf ek hi else ho sakta hai |
| Position | if aur else ke beech mein kahin bhi | Hamesha sabse aakhir mein |
| Purpose | Multiple specific cases check karna | Default ya fallback case handle karna |
Simple शब्दों में समझें तो, elif का उपयोग तब होता है जब आपको कई specific conditions को अलग-अलग check करना हो, जबकि else का उपयोग सिर्फ एक बार, आखिर में "बाकी सारे cases" को handle करने के लिए होता है। दोनों मिलकर ही एक complete decision-making structure बनाते हैं, जिससे program हर possible situation को cover कर पाता है।
Frequently Asked Questions (FAQ) – if-elif-else Statement in Python
वह Conditional Statement जिसमें एक साथ कई conditions को sequence में check किया जाता है, और सिर्फ पहली True मिलने वाली condition का block execute होता है, उसे if-elif-else Statement कहते हैं।
एक if statement के साथ ज़रूरत के अनुसार जितने चाहें उतने elif blocks लिखे जा सकते हैं, इसकी कोई fixed limit नहीं है।
elif की अपनी एक अलग condition होती है और वह तभी run होता है जब वह condition True हो, जबकि else की कोई condition नहीं होती और वह तभी run होता है जब बाकी सारी conditions False हों।
जब एक condition True होने के बाद भी उसके अंदर एक और अलग condition check करनी हो, तब Nested if Statement का इस्तेमाल किया जाता है।
नहीं, else block लिखना optional होता है — अगर सभी conditions False होने पर कुछ भी execute न करना हो, तो else block को छोड़ा जा सकता है।
Conditions हमेशा ऊपर से नीचे, यानी code में लिखे गए sequence में ही check होती हैं, और जिस condition का result सबसे पहले True मिलता है सिर्फ उसी का block execute होता है।