Función como variable en Python

En Python, una función es esencialmente una variable. Y esto significa que también se puede pasar.

Supongamos que tenemos una función que devuelve un signo de exclamación:

pythondef func():
  return '!'

Pasemos al print el nombre de la función sin paréntesis como una variable:

pythonprint(func)

Después de ejecutar el código, se mostrará en la consola un objeto especial que contiene información sobre esta función:

python<function func at 0x0000022816383E20>

Ahora declaremos la variable func2, a cuyo valor le asignaremos la función func1. La función en sí no se pasará por valor, sino por referencia como un objeto. Y al llamar a func2 con paréntesis, se mostrará en la consola el resultado de func1:

pythondef func1():
print('!')

func2 = func1
func2() # mostrará '!'
Задание 1

¿Cuál será el resultado de ejecutar el siguiente código:

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

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

¿Cuál será el resultado de ejecutar el siguiente código:

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

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