首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将函数赋值给变量

问将函数赋值给变量
EN

Stack Overflow用户
提问于 2012-04-28 00:12:13
回答 6查看 157.4K关注 0票数 77

假设我有一个函数

代码语言:javascript
复制
def x():
    print(20)

现在,我想将该函数赋给一个名为y的变量,这样,如果我使用y,它将再次调用函数x。如果我简单地执行赋值y = x(),它将返回None。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-04-28 00:13:17

您只需不调用函数即可。

代码语言:javascript
复制
>>>def x():
>>>    print(20)
>>>y = x
>>>y()
20

括号告诉python您正在调用函数,因此当您将它们放在那里时,它将调用函数并将x返回的值(在本例中为None)分配给y。

票数 125
EN

Stack Overflow用户

发布于 2012-04-28 00:14:29

当您将一个函数赋给一个变量时,您不需要使用(),而只是使用函数的名称。

在给定def x(): ...和变量silly_var的情况下,您将执行以下操作:

代码语言:javascript
复制
silly_var = x

然后,您可以使用以下命令调用该函数

代码语言:javascript
复制
x()

或

代码语言:javascript
复制
silly_var()
票数 14
EN

Stack Overflow用户

发布于 2012-04-28 00:39:52

在执行y=x()时,实际上是将y赋值给函数对象x的调用结果,并且该函数的返回值为None。python中的函数调用是使用()执行的。要分配x to y,以便可以像调用x一样调用y,您可以将函数对象x赋给y,如y=x,并使用y()调用该函数

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10354163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档