मेरी समझ के अनुसार, आंशिक कार्य ऐसे कार्य हैं जो हमें अपेक्षा से कम फ़ंक्शन से गुजरते हैं। उदाहरण के लिए, यदि यह सीधे पायथन में मान्य थे:
>>> 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)