मैं अजगर में निम्न कार्य करने की कोशिश कर रहा हूँ:एक वर्ग वस्तु में अनबाउंड अजगर कार्यों भंडारण
एक फ़ाइल बुलाया foo.py में:
# simple function that does something:
def myFunction(a,b,c):
print "call to myFunction:",a,b,c
# class used to store some data:
class data:
fn = None
# assign function to the class for storage.
data.fn = myFunction
और फिर एक फ़ाइल बुलाया bar.py में :
: आयात food = foo.data
d.fn(1,2,3)
हालांकि, मैं निम्नलिखित त्रुटि मिलती है 0
यह काफी उचित है मुझे लगता है - पायथन डी.मीफंक्शन को क्लास विधि के रूप में इलाज कर रहा है। हालांकि, मैं इसे सामान्य कार्य के रूप में मानना चाहता हूं - इसलिए मैं इसे फ़ंक्शन परिभाषा में एक अप्रयुक्त 'स्वयं' पैरामीटर जोड़ने के बिना कॉल कर सकता हूं।
तो सवाल यह है:
मैं समारोह के बिना एक वर्ग वस्तु में एक समारोह कैसे स्टोर कर सकते हैं कि वर्ग के लिए बाध्य होता जा रहा?
मुझे लगता है कि आप इसका उपयोग करना चाहते हैं: d.fn (1,2,3) और d.myFunctions (1,2,3) –
हाँ, मुझे लगता है कि आपका मतलब डी.एफएन() – hop
समाधान नीचे है, लेकिन आप यह क्यों चाहते हैं? – orip