पाइथनमा if कथनहरूसँग सशर्त शाखा व्याख्या गर्नुहोस्।
- if कथनहरूको आधारभूत कुराहरू (if, elif, else)
- तुलना अपरेटरहरू, आदिसँग सर्तहरू निर्दिष्ट गर्नुहोस्।
- संख्या, सूची, आदि द्वारा सर्तहरू निर्दिष्ट गर्नुहोस्।
- तार्किक अपरेटरहरू (र, वा, होइन) सँग धेरै सर्तहरू वा नकारात्मकताहरू निर्दिष्ट गर्नुहोस्।
- नयाँ रेखाहरू र बहु रेखाहरूमा सशर्त अभिव्यक्तिहरू
त्यहाँ एक त्रिभुज अपरेटर पनि छ जसले सशर्त शाखालाई एक लाइनमा वर्णन गर्दछ। निम्न लेख हेर्नुहोस्।
if कथनहरूको आधारभूत कुराहरू (if, elif, else)
if कथनको आधारभूत रूप निम्नानुसार छ
if Conditional expression 1:
`Processing to be performed if Expression 1 is True.`
elif Conditional expression 2:
`Processing to be performed when expression 1 is false and expression 2 is true.`
elif Expression 3:
`Process when expression 1 and 2 are false and expression 3 is true.`
...
else:
`Processing when all conditionals are false.`
“elif” C र अन्य भाषाहरूमा “else if” सँग मेल खान्छ, र त्यहाँ “elifs” को कुनै पनि संख्या हुन सक्छ।
यदि त्यहाँ केवल एक सशर्त अभिव्यक्ति वा प्रशोधन छ जब गलत आवश्यक छैन भने, “elif” र “else” ब्लकहरू हटाउन सकिन्छ।
तुलना अपरेटरहरू, आदिसँग सर्तहरू निर्दिष्ट गर्नुहोस्।
एक अपरेशनको साथ शर्त निर्दिष्ट गर्नुहोस् जसले bool प्रकार (सत्य, गलत) फर्काउँछ, जस्तै तुलना अपरेटर।
पाइथन तुलना अपरेटरहरू निम्नानुसार छन्
| अपरेटर | परिणाम |
|---|---|
x < y | सही यदि x y भन्दा कम छ |
x <= y | सही यदि x y भन्दा कम वा बराबर छ |
x > y | सही यदि x y भन्दा ठूलो छ |
x >= y | सही यदि x y भन्दा ठूलो वा बराबर छ |
x == y | x र y मान बराबर भएमा true |
x != yx is yx is not yx in yx not in yउदाहरण। सुविधाको लागि, यसलाई def स्टेटमेन्टको साथ प्रकार्यको रूपमा परिभाषित गरिएको छ।
def if_test(num):
if num > 100:
print('100 < num')
elif num > 50:
print('50 < num <= 100')
elif num > 0:
print('0 < num <= 50')
elif num == 0:
print('num == 0')
else:
print('num < 0')
if_test(1000)
# 100 < num
if_test(70)
# 50 < num <= 100
if_test(0)
# num == 0
if_test(-100)
# num < 0
निम्नलाई पाइथनको लागि अद्वितीय तरिकामा लेख्न सकिन्छ। विवरणका लागि निम्न लेख हेर्नुहोस्।a < x < b
def if_test2(num):
if 50 < num < 100:
print('50 < num < 100')
else:
print('num <= 50 or num >= 100')
if_test2(70)
# 50 < num < 100
if_test2(0)
# num <= 50 or num >= 100
#ERROR!!=
माथिको मानहरूको तुलना हो; वस्तु पहिचान तुलना गर्न, निम्न प्रयोग गर्नुहोस्
isis not
उदाहरणका लागि, पूर्णांक र फ्लोटिंग-पोइन्ट नम्बर तुलना गर्दा, “==” मानहरू बराबर भएमा सही फर्काउँछ, तर “is” गलत फर्काउँछ ’cause तिनीहरू फरक वस्तुहरू हुन्।
i = 10
print(type(i))
# <class 'int'>
f = 10.0
print(type(f))
# <class 'float'>
print(i == f)
# True
print(i is f)
# False
सूची वा स्ट्रिङले कुनै विशेष तत्व (वर्ण) समावेश गरेको अवस्था बनाउन पनि सम्भव छ।
in:समावेश गर्नुहोस्not in:समावेश छैन
def if_test_in(s):
if 'a' in s:
print('a is in string')
else:
print('a is NOT in string')
if_test_in('apple')
# a is in string
if_test_in('melon')
# a is NOT in string
संख्या, सूची, आदि द्वारा सर्तहरू निर्दिष्ट गर्नुहोस्।
if कथनको सशर्त अभिव्यक्ति संख्या, सूची, वा अन्य वस्तु हुन सक्छ जुन प्रकारको bool (सत्य, गलत) होइन।
if 10:
print('True')
# True
if [0, 1, 2]:
print('True')
# True
Python if स्टेटमेन्टको सशर्त अभिव्यक्तिमा, निम्न वस्तुहरूलाई गलत मानिन्छ।
- स्थिरहरू गलत हुन परिभाषित:
None,false- संख्यात्मक प्रकारमा शून्य:
0,0,0j,Decimal(0),Fraction(0, 1)- खाली अनुक्रम वा संग्रह:
',(),[],{},set(),range(0)Truth Value Testing — Built-in Types — Python 3.10.4 Documentation
शून्य, खाली स्ट्रिङहरू, सूचीहरू, आदि प्रतिनिधित्व गर्ने संख्याहरू गलत मानिन्छन्; अरू सबैलाई सत्य मानिन्छ।
वस्तुलाई कसरी न्याय गरिन्छ bool() बाट जाँच गर्न सकिन्छ।
print(bool(10))
# True
print(bool(0.0))
# False
print(bool([]))
# False
print(bool('False'))
# True
यो केवल प्रक्रिया लेख्न प्रयोग गर्न सकिन्छ जब सूची खाली छ, उदाहरणका लागि।
def if_test_list(l):
if l:
print('list is NOT empty')
else:
print('list is empty')
if_test_list([0, 1, 2])
# list is NOT empty
if_test_list([])
# list is empty
याद गर्नुहोस् कि स्ट्रिङ ‘False’ पनि सत्य हुनेछ, किनकि माथिको उदाहरणमा देखाइएको जस्तै, स्ट्रिङमा खाली नभएको कुनै पनि स्ट्रिङ सत्य हुनेछ।’ ‘True’ वा ‘False’ जस्ता विशिष्ट स्ट्रिङलाई १,० मा रूपान्तरण गर्न, distutils.util मोड्युलमा strtobool() प्रयोग गर्नुहोस्।
तार्किक अपरेटरहरू (र, वा, होइन) सँग धेरै सर्तहरू वा नकारात्मकताहरू निर्दिष्ट गर्नुहोस्।
तार्किक अपरेटरहरू (र, वा, होइन) तार्किक संयोजन, तार्किक विच्छेदन, र बहु सर्तहरूको अस्वीकार गर्न प्रयोग गर्न सकिन्छ।
| अपरेटर | (परिणाम (if कथनको सशर्त अभिव्यक्तिमा) |
|---|---|
x and y | true यदि x र y दुबै सत्य हो |
x or y | सत्य हो भने x वा y सत्य हो |
not x | असत्य यदि x सत्य हो, सत्य हो भने x गलत हो |
def if_test_and_not(num):
if num >= 0 and not num % 2 == 0:
print('num is positive odd')
else:
print('num is NOT positive odd')
if_test_and_not(5)
# num is positive odd
if_test_and_not(10)
# num is NOT positive odd
if_test_and_not(-10)
# num is NOT positive odd
वास्तवमा, “x र y” र “x वा y” ले सही वा गलत फर्काउँदैन, तर या त x वा y। जबसम्म तिनीहरू सशर्त अभिव्यक्तिहरूमा if कथनहरूमा प्रयोग गरिन्छ, तिनीहरूको ’boutमा चिन्ता लिनु आवश्यक छैन, किनकि तिनीहरू या त True वा False मा मूल्याङ्कन गर्छन्। विवरणका लागि निम्न लेख हेर्नुहोस्।
यो प्रयोग गर्न सम्भव छ र र वा एक पटक भन्दा बढी।
def if_test_and_not_or(num):
if num >= 0 and not num % 2 == 0 or num == -10:
print('num is positive odd or -10')
else:
print('num is NOT positive odd or -10')
if_test_and_not_or(5)
# num is positive odd or -10
if_test_and_not_or(10)
# num is NOT positive odd or -10
if_test_and_not_or(-10)
# num is positive odd or -10
नयाँ रेखाहरू र बहु रेखाहरूमा सशर्त अभिव्यक्तिहरू
जब धेरै सशर्त अभिव्यक्तिहरूलाई “र” वा “वा” सँग जडान गरेर प्रयोग गरिन्छ र प्रत्येक रेखा लामो हुन्छ, यो कहिलेकाहीँ सशर्त अभिव्यक्तिलाई तोड्न र धेरै रेखाहरूमा लेख्न आवश्यक हुन्छ।
ब्याकस्ल्याश प्रयोग गरेर वा कोष्ठकमा सम्पूर्ण रेखा संलग्न गरेर लाइन ब्रेक बनाउन सकिन्छ।
def if_test_and_backslash(num):
if num >= 0 \
and not num % 2 == 0:
print('num is positive odd')
else:
print('num is NOT positive odd')
if_test_and_backslash(5)
# num is positive odd
def if_test_and_brackets(num):
if (num >= 0
and not num % 2 == 0):
print('num is positive odd')
else:
print('num is NOT positive odd')
if_test_and_brackets(5)
# num is positive odd
तपाईले ब्याकस्ल्याश प्रयोग गरेर रेखालाई धेरै पटक तोड्न सक्नुहुन्छ। त्यसै गरी, तपाइँ कोष्ठक भित्र कुनै पनि पटक लाइन तोड्न सक्नुहुन्छ। त्यहाँ कुनै इन्डेन्टेशन सीमा छैन।
नोट गर्नुहोस् कि यो एक प्रविधि हो जुन पाइथन कोडमा जहाँ पनि प्रयोग गर्न सकिन्छ, यदि बयानहरूमा मात्र होइन।
- सम्बन्धित:पाइथनमा बहु रेखाहरूमा लामो तारहरू लेख्दै