Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन तुलना ऑपरेटरों को कैसे अधिभारित करें?


पायथन में ऑपरेटरों के अतिभारित व्यवहार को परिभाषित करने के लिए जादुई तरीके हैं। तुलना ऑपरेटरों (<, <=,>,>=, ==और !=) को __lt__, __le__, __gt__, __ge__, __eq__ और __ne__ जादू विधियों को परिभाषा प्रदान करके अतिभारित किया जा सकता है।

निम्नलिखित प्रोग्राम ओवरलोड ==और>=ऑपरेटर्स दूरी वर्ग की वस्तुओं की तुलना करने के लिए।

class distance:
      def __init__(self, x=5,y=5):
            self.ft=x
            self.inch=y

      def __eq__(self, other):
             if self.ft==other.ft and self.inch==other.inch:
                  return "both objects are equal"
             else:
                  return "both objects are not equal"

       def __ge__(self, other):
                 in1=self.ft*12+self.inch
                 in2=other.ft*12+other.inch
                 if in1>=in2:
                    return "first object greater than or equal to other"
                  else:
                    return "first object smaller than other"

d1=distance(5,5)
d2=distance()
print (d1==d2)
d3=distance()
d4=distance(6,10)
print (d1==d2)
d5=distance(3,11)
d6=distance()
print(d5>=d6)

उपरोक्त कार्यक्रम का परिणाम ==और>=तुलना ऑपरेटरों के अतिभारित उपयोग को दर्शाता है

both objects are equal
both objects are equal
first object smaller than other

  1. तुलना ऑपरेटर I=एक्सेल में कैसे उपयोग करें

    क्या जानना है छह ऑपरेटर:बराबर (= ), इससे बड़ा ( ), इससे कम ( ), इससे बड़ा या बराबर (= ) इससे कम या उसके बराबर (<= ), के बराबर नहीं (<> )। सबसे आम तुलना ऑपरेटर उपयोग IF . में है समारोह। यह आलेख बताता है कि एक्सेल में तुलना ऑपरेटर I =का उपयोग कैसे करें। निर्देश एक्सेल संस्करण 2019, 2016, 2013, 201

  1. मैं पाइथन में केस असंवेदनशील स्ट्रिंग तुलना कैसे करूं?

    निम्नलिखित कोड पायथन में केस असंवेदनशील स्ट्रिंग तुलना का एक उदाहरण है। उदाहरण string1 = 'Star Wars' string2 = 'star wars' if string1.lower() == string2.lower():     print "The strings are case insensitive" else:     print "The strings are not case

  1. हम पायथन फ़ंक्शन को कैसे अधिभारित कर सकते हैं?

    पायथन में आप एक विधि को इस तरह से परिभाषित कर सकते हैं कि इसे कॉल करने के कई तरीके हैं। फ़ंक्शन परिभाषा के आधार पर, इसे शून्य, एक, दो या अधिक मापदंडों के साथ कहा जा सकता है। इसे मेथड ओवरलोडिंग के रूप में जाना जाता है। दिए गए कोड में, एक वर्ग है जिसमें एक विधि SayHello() है। हम नीचे दिखाए अनुसार फिर