मुझे ऐसा नहीं लगता, लेकिन मैंने सोचा कि मैं बस मामले में पूछूंगा। उदाहरण के लिए, एक वर्ग है कि एक पूर्णांक समाहित में इस्तेमाल के लिए:क्या पाइथन में रूपांतरण ऑपरेटर हैं?
i = IntContainer(3)
i + 5
और मैं सिर्फ इस पूर्णांक उदाहरण में कोई दिलचस्पी नहीं हूँ, मैं कुछ साफ है और सामान्य के लिए, देख रहा था अधिभावी नहीं हर int और स्ट्रिंग विधि।
धन्यवाद, सनकियांग। यही वही है जो मैं चाहता था। मुझे एहसास नहीं हुआ कि आप इन अपरिवर्तनीय प्रकारों को घटा सकते हैं (सी ++ से आ रहे हैं)।
class IntContainer(int):
def __init__(self,i):
#do stuff here
self.f = 4
def MultiplyBy4(self):
#some member function
self *= self.f
return self
print 3+IntContainer(3).MultiplyBy4()
वास्तव में नहीं। मैं सी ++ रूपांतरण ऑपरेटर की तरह कुछ ढूंढ रहा था, जो बुद्धिमानी से कंटेनर ऑब्जेक्ट को अभिव्यक्तियों में जो कुछ भी शामिल करता है उसे बदल देता है। – Alex
यह "5 + मैं" के लिए असफल हो जाएगा, मुझे विश्वास है। – ars
ars, आप सही हैं, मैंने आपका जवाब देखा और मुझे याद आ रही है __radd__ ... मुझे लगता है कि मैंने अपना जवाब बदलने के बाद ठीक है ... –