python - पायथन और/या ऑपरेटर वापसी मूल्य
operators logical-operators (3)
इस प्रश्न का उत्तर यहां दिया गया है:
- पायथन और / या ऑपरेटर 7 उत्तरों का अजीब उपयोग
मैं उन्नत पायथन या समझने वाले पायथन पर एक 2007 वीडियो देख रहा था, और 18'27 पर "स्पीकर का दावा है" जैसा कि कुछ पाइथन में जानते हैं और or
दो मानों में से एक को वापस or
हैं, जबकि हमेशा एक बूलियन not
लौटाता है। "यह कब होता है मामला रहा है?
जहां तक मैं बता सकता हूं, and
बुलियन भी लौटा सकता हूं।
@ Frédéric के उत्तर में कुछ बिंदु जोड़ने की आवश्यकता है।
अपने ऑपरेंड में से एक वापस लौटें ???
यह सच है। लेकिन यह इसके पीछे तर्क नहीं है। पायथन में 0 को छोड़कर एक संख्या को सत्य माना जाता है और संख्या 0 को गलत माना जाता है।
(ओ और 42-> झूठा और सही) = झूठा।
यही कारण है कि यह 0 देता है।
(0 या 42-> झूठी या सही) = 42
उस स्थिति में ऑपरेशन 42 के कारण कथन सत्य होगा। इसलिए पाइथन उस ऑपरेशन को वापस लौटाता है जो उस स्थिति में कथन को सत्य मानता है।
पाइथन डॉक्स में मानक लाइब्रेरी संदर्भ से this तालिका देखें:
and
और ऑपरेटर अपने ऑपरेंड में से एक लौटते हैं, न कि शुद्ध बूलियन मूल्य जैसे True
या False
:
>>> 0 or 42
42
>>> 0 and 42
0
जबकि हमेशा एक शुद्ध बुलियन मूल्य not
देता है:
>>> not 0
True
>>> not 42
False