python - 为什么将函数放入变量中时会执行(以及如何停止它)
问题描述
在用 python 编写程序时,我注意到如果将一个函数print("hello world")
放在一个变量中,它不会像预期的那样存储,而是会运行。此外,当我稍后在程序中调用该变量时,它什么也不做。谁能告诉我这是为什么以及如何解决?
解决方案
如果是这样的意思:
variable = print("hello world")`
然后调用该函数是预期的结果。此语法意味着调用print
函数并将返回的值分配给变量。它类似于:
variable = input("Enter a name")
你肯定不会对这调用input()
函数并将用户输入的字符串分配给变量感到惊讶。
如果要存储函数,可以使用lambda
:
variable = lambda: print("hello world")
然后你可以稍后做:
variable()
它会打印消息
推荐阅读
- reactjs - 自定义 useForm Hook 不更新字段值
- javascript - 有没有办法从数组中获得唯一的随机子数组,每个随机数组不应该有相同的元素?
- python - 如何拆分并转换为字典并交换键值
- javascript - 为什么这个递归示例给了我一个无限循环?
- javascript - 在特定值之后插入数组中的元素,并且仅当该值符合条件 || Javascript
- c# - 在 Windows 窗体中自定义数据网格视图
- xml - 如何在 XML 文件之间创建链接
- python - Django mange.py migrate --> 没有迁移文件夹,也没有创建表
- db2 - 在 db2 中运行 LOAD 实用程序后的 RUNSTATS
- reactjs - 如何根据状态更新 react-i18next 语言?