පයිතන් හි විචල්යයක් ලෙස ශ්‍රිතය

පයිතන් හි, ශ්‍රිතයක් එහි ස්වභාවයෙන් විචල්යයක් වේ. මෙයින් අදහස් වන්නේ එය ද පවරා දිය හැකි බවයි.

අප සතුව ඇති ශ්‍රිතයක් උද්දාම ලකුණු ලබා දෙන්නේ යැයි සිතමු:

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))