पायथन में फ़ंक्शन को वेरिएबल की तरह इस्तेमाल करना

पायथन में फ़ंक्शन अपने आप में एक वेरिएबल होता है। और इसका मतलब है कि इसे भी पास किया जा सकता है।

मान लीजिए कि हमारे पास एक फ़ंक्शन है जो विस्मयादिबोधक चिह्न लौटाता है:

pythondef func():
  return '!'

आइए print में फ़ंक्शन का नाम बिना गोल कोष्ठकों के वेरिएबल की तरह पास करें:

pythonprint(func)

कोड निष्पादित होने के बाद कंसोल में एक विशेष ऑब्जेक्ट दिखाई देगा, जिसमें इस फ़ंक्शन की जानकारी होगी:

python<function func at 0x0000022816383E20>

अब आइए एक वेरिएबल func2 घोषित करें, जिसके मान में हम फ़ंक्शन func1 पास करेंगे। फ़ंक्शन स्वयं वैल्यू के रूप में नहीं, बल्कि एक ऑब्जेक्ट के रूप में रेफरेंस द्वारा पास किया जाएगा। और जब func2 को गोल कोष्ठकों के साथ कॉल किया जाएगा तो कंसोल में func1 के निष्पादन का परिणाम दिखाई देगा:

pythondef func1():
print('!')

func2 = func1
func2() # '!' प्रिंट करेगा
Задание 1

निम्नलिखित कोड निष्पादित करने का परिणाम क्या होगा:

pythondef func():
  print('hello, user!')

greet = func
print(greet)
Задание 2

निम्नलिखित कोड निष्पादित करने का परिणाम क्या होगा:

pythondef getSum(num1, num2):
  res = num1 + num2
  return res

func = getSum
print(func(2, 3))