संदर्भ - http://docs.python.org/library/unittest.html#assert -तरीके

assertEqual(a, b)   # checks that a == b
assertIs(a, b)  # checks that a is b  <---- whatever that means????
10
Calvin Cheng 2 सितंबर 2011, 13:51
3
जब आप दस्तावेज़ीकरण पढ़ते हैं, तो कौन से सटीक शब्द आपको भ्रमित करते हैं? क्या आपने == और is ऑपरेटरों के बारे में पढ़ा? जब आप == और is ऑपरेटर के बीच के अंतर को पढ़ते हैं तो कौन से सटीक शब्द आपको भ्रमित करते हैं? यदि आप अपने द्वारा पढ़ी गई सामग्री के उद्धरण प्रदान करते हैं तो यह मदद करता है ताकि हम उन शब्दों के उत्तर को लक्षित करें जो आपको भ्रमित करते हैं।
 – 
S.Lott
2 सितंबर 2011, 13:58
1
का संभावित डुप्लिकेट ?
 – 
S.Lott
2 सितंबर 2011, 14:14
यह उत्तर आपकी मदद करेगा स्ट्रिंग्स की तुलना करना कभी-कभी विफल हो जाता है क्यों"> stackoverflow.com/questions/1504717/…
 – 
Bobby
2 सितंबर 2011, 14:19

1 उत्तर

सबसे बढ़िया उत्तर

assertEqual का उपयोग करते हुए दो वस्तुओं का एक ही प्रकार का होना आवश्यक नहीं है, उनका केवल एक ही मूल्य होना चाहिए। इसकी तुलना में, assertIs का उपयोग करते हुए दो वस्तुओं का एक ही वस्तु होना आवश्यक है।

assertEqual समानता के लिए परीक्षण == ऑपरेटर की तरह:

ऑपरेटर <, >, ==, >=, <=, और != दो वस्तुओं के मूल्यों की तुलना करते हैं। वस्तुओं का एक ही प्रकार होना आवश्यक नहीं है। यदि दोनों संख्याएँ हैं, तो उन्हें एक सामान्य प्रकार में बदल दिया जाता है। अन्यथा, विभिन्न प्रकार की वस्तुएं हमेशा असमान की तुलना करती हैं, और उन्हें लगातार लेकिन मनमाने ढंग से आदेश दिया जाता है।

वस्तु पहचान के लिए assertIs परीक्षण is और is not ऑपरेटरों के समान:

ऑब्जेक्ट पहचान के लिए ऑपरेटर परीक्षण है और नहीं है: x is y सत्य है यदि और केवल यदि x और y एक ही ऑब्जेक्ट हैं। x, y नहीं है, व्युत्क्रम सत्य मान देता है।

उपरोक्त उद्धरण दोनों पायथन प्रलेखन अनुभाग 5.9 तुलना से आते हैं।

21
Matthew Rankin 2 सितंबर 2011, 14:05
असमानता तुलना 3.x संस्करणों में बदल गई: अन्यथा, == और != ऑपरेटर हमेशा विभिन्न प्रकार की वस्तुओं को असमान मानते हैं, जबकि <,>,>= और <= ऑपरेटर विभिन्न प्रकार की वस्तुओं की तुलना करते समय एक TypeError बढ़ाते हैं। जो इन ऑपरेटरों को दिए गए प्रकार के जोड़े के लिए लागू नहीं करते हैं।
 – 
Xavier Combelle
2 सितंबर 2011, 15:06