मैं गणितीय अभिव्यक्ति तार को पार्स करने के लिए कोड लिख रहा हूं, और मैंने देखा कि पायथन में जंजीर वाले बिजली ऑपरेटरों का मूल्यांकन किस क्रम से किया जाता है, यह एक्सेल के क्रम से भिन्न होता है।
से http://docs.python.org/reference/expressions.html :
"इस प्रकार, शक्ति और यूनिरी संचालकों के एक अपरिवर्तनीय अनुक्रम में, ऑपरेटरों को दाएं से बाएं का मूल्यांकन किया जाता है (यह ऑपरेंड के लिए मूल्यांकन आदेश को बाधित नहीं करता है): -1 में -1 * 2 परिणाम।" *
इसका मतलब यह है कि, पायथन में: के
2**2**3
रूप में मूल्यांकन किया जाता है2**(2**3) = 2**8 = 256
Excel में, यह दूसरे तरीके से काम करता है: के 2^2^3
रूप में मूल्यांकन किया जाता है(2^2)^3 = 4^3 = 64
मुझे अब अपने खुद के पार्सर के लिए एक कार्यान्वयन का चयन करना होगा। एक्सेल आदेश को लागू करना आसान है, क्योंकि यह गुणन के मूल्यांकन क्रम को दर्शाता है।
मैंने कार्यालय के आस-पास के कुछ लोगों से पूछा कि मूल्यांकन के लिए उनकी आंत क्या है 2^2^3
और मिश्रित प्रतिक्रियाएं मिलीं।
क्या किसी को पायथन कार्यान्वयन के पक्ष में किसी अच्छे कारण या सहमति का पता है? और अगर आपके पास कोई उत्तर नहीं है, तो कृपया परिणाम के साथ टिप्पणी करें जो आपको आंत से लगता है - 64
या 256
?