如何在不运行变量的情况下将函数分配给变量?

Loo*_*oop 4 python

每当我将变量分配给函数时,它都会运行该函数。结果,如果我在函数中有一个打印语句,它会打印文本,即使我想做的只是分配但不运行该函数。我不相信在 C++ 等许多其他编程语言中都是这种情况,那么我在这里遗漏了一个核心概念吗?

def function(x):
    print("Text From Function")
    return 3*x

y = function(2)
Run Code Online (Sandbox Code Playgroud)

我希望没有输出,但实际输出是:来自函数的文本

小智 5

如果您有函数 a 并想将其分配给变量 y 您只需执行以下操作:

def a():
  print("hello")
y = a
y()
Run Code Online (Sandbox Code Playgroud)

在这种情况下,运行 y() 将打印“hello”。如果在函数后使用括号,它将调用它并返回函数返回的任何内容,而不是函数本身。