Python में if कथन एक सशर्त कथन है जो केवल तभी कोड का एक ब्लॉक निष्पादित करता है जब एक विशिष्ट शर्त पूरी होती है। यह एक बूलियन अभिव्यक्ति का मूल्यांकन करता है जो True या False लौटाता है, और जब शर्त True होती है तो इंडेंटेड कोड ब्लॉक चलाता है। Python के if कथन आपके कार्यक्रमों में निर्णय लेने को सक्षम करते हैं, जो विभिन्न शर्तों के आधार पर अलग-अलग कोड पथों की अनुमति देते हैं।
मूल if कथन सिंटैक्स
Python में if कथन का सिंटैक्स सीधा है:
if condition:
# code to execute if condition is True
statement condition एक बूलियन अभिव्यक्ति है (जैसे number > 5 या name == "Alice") जो True या False के रूप में मूल्यांकन करती है। यदि शर्त True के रूप में मूल्यांकन करती है, तो इंडेंटेड कोड ब्लॉक निष्पादित होता है; यदि False, तो Python ब्लॉक को पूरी तरह से छोड़ देता है।
उदाहरण 1: सरल if कथन
number = 10
if number > 0:
print("The number is positive") The number is positive
उदाहरण 2: False शर्त के साथ if कथन
number = -5
if number > 0:
print("The number is positive")
print("This line always executes") This line always executes
दूसरे उदाहरण में, चूंकि -5 0 से अधिक नहीं है, if ब्लॉक के अंदर print कथन छोड़ दिया जाता है।
if कथनों में इंडेंटेशन
Python कोड ब्लॉकों के दायरे को परिभाषित करने के लिए इंडेंटेशन (एक पंक्ति की शुरुआत में रिक्त स्थान) पर निर्भर करता है, अन्य भाषाओं के विपरीत जो घुंघराले ब्रेसिज़ का उपयोग करती हैं। if ब्लॉक के अंदर सभी कथनों को समान मात्रा में इंडेंट किया जाना चाहिए, आमतौर पर 4 रिक्त स्थान।
सही इंडेंटेशन:
age = 20
if age >= 18:
print("You are an adult")
print("You can vote")
print("You have full legal rights") गलत इंडेंटेशन (एक त्रुटि का कारण होगा):
age = 20
if age >= 18:
print("You are an adult") # IndentationError यदि आप उचित इंडेंटेशन का उपयोग नहीं करते हैं, तो Python एक IndentationError उठाएगा क्योंकि यह निर्धारित नहीं कर सकता कि कौन से कथन if ब्लॉक से संबंधित हैं।
if कथनों के साथ तुलना ऑपरेटर
Python मानक तुलना ऑपरेटरों का समर्थन करता है जो if कथनों में उपयोग के लिए बूलियन मान लौटाते हैं:
==- बराबर!=- बराबर नहीं<- से कम<=- से कम या बराबर>- से अधिक>=- से अधिक या बराबर
उदाहरण: विभिन्न तुलना ऑपरेटरों का उपयोग करना
a = 33
b = 200
if b > a:
print("b is greater than a")
if a != b:
print("a and b are not equal")
if a <= 50:
print("a is 50 or less") b is greater than a a and b are not equal a is 50 or less
if ब्लॉक में कई कथन
जब तक वे सभी समान स्तर के इंडेंटेशन हैं, आप if ब्लॉक के अंदर कई कथन शामिल कर सकते हैं।
उदाहरण:
score = 95
if score >= 90:
print("Excellent work!")
print("You earned an A grade")
grade = "A"
print(f"Your grade is: {grade}") Excellent work! You earned an A grade Your grade is: A
if कथनों में बूलियन चर
बूलियन चर का उपयोग तुलना ऑपरेटरों के बिना सीधे if कथनों में किया जा सकता है।
उदाहरण:
is_logged_in = True
if is_logged_in:
print("Welcome back!")
is_raining = False
if is_raining:
print("Take an umbrella")
else:
print("Enjoy the sunshine") Welcome back! Enjoy the sunshine
Python बूलियन संदर्भ में कुछ मानों को False के रूप में मानता है: 0, खाली स्ट्रिंग "", None, और खाली संग्रह जैसे [] या {}। अन्य सभी मानों को True के रूप में माना जाता है।
Truthy और Falsy मान
Python सशर्त कथनों में कई प्रकार के मानों का मूल्यांकन True या False के रूप में कर सकता है:
Falsy मान (False के रूप में मूल्यांकन):
0(शून्य)""(खाली स्ट्रिंग)None[](खाली सूची)(खाली शब्दकोश)()(खाली टपल)
Truthy मान (True के रूप में मूल्यांकन):
- कोई भी गैर-शून्य संख्या (सकारात्मक या नकारात्मक)
- कोई भी गैर-खाली स्ट्रिंग
- गैर-खाली संग्रह
उदाहरण:
name = ""
if name:
print(f"Hello, {name}")
else:
print("Name is empty")
items = [1, 2, 3]
if items:
print("List has items") Name is empty List has items
एक-पंक्ति if कथन
सरल शर्तों के लिए, आप एक if कथन को एक पंक्ति पर लिख सकते हैं:
मानक प्रारूप:
temperature = 30
if temperature > 25:
print("It's hot outside") कॉम्पैक्ट प्रारूप:
temperature = 30
if temperature > 25: print("It's hot outside") दोनों संस्करण समान आउटपुट उत्पन्न करते हैं, लेकिन एक-पंक्ति प्रारूप सरल कथनों के लिए अधिक संक्षिप्त है।
सामान्य उपयोग के मामले
उपयोग मामला 1: उपयोगकर्ता इनपुट सत्यापन
age = int(input("Enter your age: "))
if age >= 18:
print("You are eligible to vote") उपयोग मामला 2: सम या विषम संख्याओं की जांच
number = 7
if number % 2 == 0:
print(f"{number} is even") उपयोग मामला 3: पासवर्ड सत्यापन
password = "secret123"
if len(password) >= 8:
print("Password is strong enough") उपयोग मामला 4: सूची सामग्री की जांच
shopping_cart = ["apple", "banana", "milk"]
if "milk" in shopping_cart:
print("Milk is in your cart") बचने के लिए सामान्य गलतियां
गलती 1: कोलन भूल जाना
# Wrong
if number > 0
print("Positive")
# Correct
if number > 0:
print("Positive") गलती 2: == के बजाय = का उपयोग करना
x = 5
# Wrong (assignment, not comparison)
if x = 5:
print("x is 5")
# Correct
if x == 5:
print("x is 5") गलती 3: असंगत इंडेंटेशन
# Wrong
if True:
print("Line 1")
print("Line 2") # Different indentation level
# Correct
if True:
print("Line 1")
print("Line 2") अभ्यास उदाहरण
उदाहरण 1: तापमान चेकर
temperature = 22
if temperature > 30:
print("It's very hot")
if temperature > 20:
print("It's warm")
if temperature < 10:
print("It's cold") It's warm
उदाहरण 2: ग्रेड असाइनमेंट
marks = 85
if marks >= 90:
print("Grade: A")
if marks >= 80 and marks < 90:
print("Grade: B")
if marks >= 70 and marks < 80:
print("Grade: C") Grade: B
उदाहरण 3: सदस्यता जांच
username = "admin"
if username == "admin":
print("Access granted to admin panel")
print("Loading admin dashboard...") Access granted to admin panel Loading admin dashboard...
इसे स्वयं आज़माएं
नीचे दिए गए कोड को संशोधित करके आपने जो सीखा है उसका अभ्यास करें। विभिन्न आउटपुट देखने के लिए मानों और शर्तों को बदलने का प्रयास करें!
// परिणाम देखने के लिए "कोड चलाएं" पर क्लिक करें
संबंधित विषय
अक्सर पूछे जाने वाले प्रश्न
Python में if और if else के बीच क्या अंतर है?
एक if कथन केवल तभी कोड निष्पादित करता है जब शर्त True होती है। एक if else कथन एक वैकल्पिक कोड ब्लॉक प्रदान करता है जो तब निष्पादित होता है जब शर्त False होती है।
क्या मुझे Python if कथनों में शर्त के चारों ओर कोष्ठक का उपयोग करने की आवश्यकता है?
नहीं, Python में कोष्ठक वैकल्पिक हैं। if (x > 5): और if x > 5: दोनों मान्य हैं, लेकिन बाद वाला अधिक Pythonic है।
क्या मैं एक if कथन में कई शर्तों का उपयोग कर सकता हूं?
हां, आप कई शर्तों को संयोजित करने के लिए and, or और not जैसे तार्किक ऑपरेटरों का उपयोग कर सकते हैं: if age >= 18 and has_license:।
यदि मैं if कथन के बाद कोड को इंडेंट नहीं करता हूं तो क्या होगा?
Python एक IndentationError उठाएगा क्योंकि इसे कोड ब्लॉक को परिभाषित करने के लिए इंडेंटेशन की आवश्यकता होती है।