मेरी समझ के अनुसार, आंशिक कार्य ऐसे कार्य हैं जो हमें अपेक्षा से कम फ़ंक्शन से गुजरते हैं। उदाहरण के लिए, यदि यह सीधे पायथन में मान्य थे:
>>> def add(x,y):
... return x+y
...
>>> new_function = add(1)
>>> new_function(2)
3
ऊपर स्निपेट में, new_functionएक आंशिक कार्य है। हालांकि, हास्केल विकी के अनुसार, आंशिक कार्य की परिभाषा है
आंशिक फ़ंक्शन एक फ़ंक्शन है जो निर्दिष्ट प्रकार के सभी संभावित तर्कों के लिए परिभाषित नहीं है।
इसलिए, मेरा सवाल यह है: "आंशिक कार्य" से वास्तव में क्या अभिप्राय है?
partial करता है , जबकि हास्केल स्वचालित रूप से ऐसा करता है। विकी प्रविष्टि आंशिक कार्यों को संदर्भित करती है , जो गणित से एक शब्द है।
add 3 5नहीं है जो एकल फ़ंक्शन अनुप्रयोग है। यह पहली बार addएक नया फंक्शन पाने के लिए 3 पर लागू होता है, जो बाद में 5.
partialविधि प्रोजेक्ट कोडबेस में कहीं और वैकल्पिक रूप से लागू निजी विधि की एक आगे की घोषणा है ।
new_function = functools.partial(add, 1)