monkeypatching पर टैग किए गए जवाब

16
मौजूदा वस्तु उदाहरण के लिए एक विधि जोड़ना
मैंने पढ़ा है कि पायथन में एक मौजूदा ऑब्जेक्ट (यानी, क्लास की परिभाषा में नहीं) में एक विधि जोड़ना संभव है। मैं समझता हूं कि ऐसा करना हमेशा अच्छा नहीं होता। लेकिन कोई ऐसा कैसे कर सकता है?

8
बंदर का पेटिंग क्या है?
मैं यह समझने की कोशिश कर रहा हूं कि बंदर का पेटिंग या बंदर का पैच क्या है? क्या कुछ ऐसा है जैसे कि तरीके / ऑपरेटर ओवरलोडिंग या डेलिगेटिंग हैं? क्या यह इन चीजों के साथ कुछ सामान्य है?

3
जब बंदर एक आवृत्ति विधि को पैच करता है, तो क्या आप नए कार्यान्वयन से ओवरराइड विधि कह सकते हैं?
कहो कि मैं एक कक्षा में एक विधि का पालन-पोषण कर रहा हूं, मैं ओवरराइडिंग विधि से ओवरराइड विधि को कैसे कह सकता हूं? Ie कुछ थोड़ा सा पसंद हैsuper उदाहरण के लिए class Foo def bar() "Hello" end end class Foo def bar() super() + " World" end end …

24
गतिशील रूप से वर्ग में संपत्ति कैसे जोड़ें?
लक्ष्य एक मॉक क्लास बनाना है जो db परिणाम की तरह व्यवहार करता है। उदाहरण के लिए, यदि कोई डेटाबेस क्वैक्शन देता है, एक तानाशाही अभिव्यक्ति का उपयोग करके {'ab':100, 'cd':200}, तो मैं देखना चाहूंगा: >>> dummy.ab 100 पहले मुझे लगा कि शायद मैं इसे इस तरह से कर सकता …

9
क्या मैं किसी फ़ंक्शन को लपेटने से पहले पायथन डेकोरेटर को पैच कर सकता हूं?
मेरे पास एक सज्जाकार के साथ एक फ़ंक्शन है जिसे मैं पायथन मॉक लाइब्रेरी की मदद से परीक्षण करने की कोशिश कर रहा हूं । मैं mock.patchअसली डेकोरेटर को मॉक 'बाईपास' डेकोरेटर से बदलना चाहता हूं, जो सिर्फ फ़ंक्शन को कॉल करता है। मैं यह पता नहीं लगा सकता कि …

5
अजगर में एक बंदर कैसे काम करता है?
मुझे एक फ़ंक्शन को दूसरे फ़ंक्शन के साथ एक अलग मॉड्यूल से बदलने में परेशानी हो रही है और यह मुझे पागल कर रहा है। मान लें कि मेरे पास एक मॉड्यूल बारकोड है जो इस तरह दिखता है: from a_package.baz import do_something_expensive def a_function(): print do_something_expensive() और मेरे पास …
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.