
Please support if you like my work by payment through upi: sinhamit@icici or payment by bank
account name: Amit Kumar Sinha,
account number: 2646728782
IFSC code: KKBK0005660
SWIFT: KKBKINBB
Comparison, Logical, Operators in Category: पाइथन by amit
🕙 Posted on 2023-06-30 at 18:30:31
ऑपरेटरों पर अधिक
सशर्त (conditional) (या तुलना comparison) ऑपरेटर उन अभिव्यक्तियों (expressions) और ऑपरेंड के साथ काम करते हैं जो इन ऑपरेटरों के साथ तुलना करने पर, एक बूलियन मान, अर्थात True
या False
आउटपुट करते हैं। तार्किक (logical) संचालक इन तुलनाओं की कार्यक्षमता को बढ़ाते हैं। आइए इन ऑपरेटरों के बारे में जानें।
तुलना ऑपरेटर्स
पायथन में, केवल कुछ तुलना संचालक हैं, अर्थात्, == (बराबर), != (बराबर नहीं), < (इससे कम), > (इससे अधिक), <= (इससे कम या इसके बराबर), और >= (इससे अधिक या इसके बराबर)। PHP और JavaScript के विपरीत, कोई ===, !==, <>, <=>, और अन्य समान ऑपरेटर नहीं हैं। आप निम्नलिखित उदाहरण में 5 == '5' का आउटपुट False देख सकते हैं, जो PHP और JavaScript में OUTPUT के विपरीत है।
print( 5 == 5 ) # आउटपुट True है।
print( 5 == '5' ) # आउटपुट False है।
print( 5 != '5' ) # आउटपुट True है।
print( 5 != 6 ) # आउटपुट True है।
print( 5 < 6 ) # आउटपुट True है।
हालाँकि पायथन एक ढीली डेटा-प्रकार प्रोग्रामिंग भाषा है, यह PHP और जावास्क्रिप्ट से अलग है। Python में ढीली तुलना या सख्त तुलना जैसी कोई चीज़ नहीं है । अन्य तुलना ऑपरेटर, यानी >, <=, >= उपरोक्त उदाहरणों के अनुरूप अपेक्षित काम करते हैं।
लॉजिकल ऑपरेटर्स
PHP और जावास्क्रिप्ट जैसे कोई &&, || और ! ऑपरेटर नहीं हैं। पायथन में, आरक्षित कीवर्ड, and
, or
, not
तार्किक ऑपरेटरों के रूप में उपयोग किए जाते हैं। जब दोनों ऑपरेंड के शाब्दिक या अभिव्यक्ति का मूल्यांकन True
किया जाता है, तो and
तार्किक तुलना में आउटपुट True होता है, अन्यथा False
वापस कर दिया जाएगा।
जब दो ऑपरेंड में से किसी एक का मूल्यांकन True
किया जाता है, तो or
तार्किक तुलना में आउटपुट True होता है। जब दोनों ऑपरेंड का मूल्यांकन False के रूप में किया जाता है, तभी or
तार्किक तुलना में False
लौटाया जाएगा। जब किसी ऑपरेंड से पहले not
लॉजिकल ऑपरेटर का उपयोग किया जाता है तो उसका मान उसके विपरीत में बदल जाता है। आइए तार्किक ऑपरेटरों के कुछ उदाहरण देखें:
print( True and
True ) # आउटपुट True है।
print( False and
True ) # आउटपुट False है।
print( False and
False ) # आउटपुट False है।
print( True or
True ) # आउटपुट True है।
print( False or
True ) # आउटपुट True है।
print( False or
False ) # आउटपुट False
print( not
True ) # आउटपुट False है।
print( not
False ) # आउटपुट True है।
बिटवाइज़ ऑपरेटर्स
हालाँकि बिटवाइज़ ऑपरेटर &
, |
, और ^
तुलना पर बूलियन परिणाम भी आउटपुट कर सकते हैं, लेकिन ऐसा करना उचित नहीं है।
बिटवाइज़ and जब दोनों ऑपरेंड का बाइनरी मान 1 हो तो 1 लौटाता है, अन्यथा 0 लौटाता है
print( False &
False ) # आउटपुट False है।
print( True &
False ) # आउटपुट False है।
print( False &
True ) # आउटपुट False है।
print( True &
True ) # आउटपुट True है।
बिटवाइज़ or जब दोनों ऑपरेंड्स में से एक का भी बाइनरी मान 1 हो, तो 1 लौटाता है। जब दोनों ऑपरेंड का बाइनरी मान 0 होता है, तो 0 लौटाता है।
print( True |
True ) # आउटपुट True है।
print( False |
True ) # आउटपुट True है।
print( True |
False ) # आउटपुट True है।
print( False |
False ) # आउटपुट False है।
बिटवाइज़ xor जब दोनों ऑपरेंड समान बाइनरी मान हों तो 0 लौटाता है, अन्यथा 1 लौटाता है।
print( False ^
False ) # आउटपुट False है।
print( True ^
True ) # आउटपुट False है।
print( False ^
True ) # आउटपुट True है।
print( True ^
False ) # आउटपुट True है।
बिटवाइज़ not ऑपरेंड के बाइनरी मान को फ़्लिप करता है।
print( ~
True ) # आउटपुट -2 है।
print( ~
False ) # आउटपुट -1 है।
पहचान (Identity) संचालक
is
यह जांचता है कि क्या दो वेरिएबल नाम एक ही ऑब्जेक्ट के हैं (डेटा-प्रकार नहीं), और is not
का उपयोग यह जांचने के लिए किया जाता है कि क्या वे अलग-अलग ऑब्जेक्ट हैं। id()
फ़ंक्शन का उपयोग किसी ऑब्जेक्ट की मेमोरी लोकेशन जानने के लिए किया जाता है। id() एक अंतर्निहित फ़ंक्शन है, जो ऑब्जेक्ट की पहचान (identity) लौटाता है। निम्नलिखित उदाहरण में, आप दोनों x और y की id() देख सकते हैं कि वे दोनों समान हैं।
x = 5
y = 5
print( id
(x) )
print( id
(y) )
print( x is
y ) # आउटपुट निम्नलिखित है।
2018911322480
2018911322480
True
print( 5 is 5 ) # निम्नलिखित त्रुटि के साथ आउटपुट True है:
C:\xampp\
C:\xampp\
print( 5 is 5 )
True
नीचे दिए गए उदाहरण में, आप देख सकते हैं कि दोनों वेरिएबल नाम a और b समान मूल्य और समान डेटा-प्रकार है, जो कि list है, लेकिन उनका id()
अलग है और इसलिए, जब is
ऑपरेटर के साथ तुलना किया जाता है, आउटपुट False है। इसके अलावा, जब दोनों a और b is not
ऑपरेटर के साथ तुलना किया जाता है, आउटपुट True है।
a = [1, 2, 3]
b = [1, 2, 3]
print( id(a) )
print( id(b) )
print( a is
b )
उपरोक्त उदाहरण निम्नानुसार आउटपुट करता है:
2290722944192
2290722878400
False
print( a is not
b ) # आउटपुट True है।
सदस्यता (Membership) संचालक
in
और not in
ऑपरेटरों का उपयोग यह जांचने के लिए किया जाता है कि किसी चर नाम का मान अनुक्रम (sequence) डेटा-प्रकार, उदाहरण के लिए, स्ट्रिंग, सूची, आदि में है या नहीं।
x = 5 # integer data-type
y = [1, 2, 3, 4, 5] # list data-type
print( x in y ) # Outputs True
print( id
(x) )
print( id
( y[4] ) ) # 'y' के बाद वर्ग कोष्ठक में [4], 5 की सूचकांक (index) (अंतिम आइटम) संख्या है
उपरोक्त उदाहरण का आउटपुट जैसा कि नीचे दिखाया गया है:
True
2920055505264
2920055505264
पायथन में, एक शाब्दिक मान, उदाहरण के लिए, 5 चाहे सीधे एक चर नाम को सौंपा गया हो या किसी अनुक्रम (sequence) के किसी आइटम को सौंपा गया हो, केवल मेमोरी में एक स्थान होता है, जैसा कि ऊपर दिखाया गया है। इसलिए, जब id()
फ़ंक्शन द्वारा 5 की पहचान (identity) की जाँच की जाती है, तो id(x) और id( y[4] ) दोनों एक मेमोरी स्थान का समान संख्यात्मक मान आउटपुट करते हैं।
जब आप कोई कोड चलाते/
Leave a Comment:

Amit Sinha March 2nd, 2023 at 9:30 PM
😃 😄 😁 😆 😅 😂 😉 😊 😇 😍 😘 😚 😋 😜 😝 😶 😏 😒 😌 😔 😪 😷 😵 😎 😲 😳 😨 😰 😥 😢 😭 😱 😖 😣 😞 😓 😩 😫 😤

Ribhu March 3rd, 2023 at 9:30 PM
🐵 🐒 🐶 🐩 🐺 🐱 🐯 🐅 🐆 🐴 🐎 🐮 🐂 🐃 🐄 🐷 🐖 🐗 🐽 🐏 🐑 🐐 🐪 🐫 🐘 🐭 🐁 🐀 🐹 🐰 🐇