python - 为什么返回的函数没有被赋值却没有报错?

标签 python python-3.x

我正在学习 Python 中一流函数的概念(使用 Python 3.6.8),但无法弄清楚为什么下面的代码没有显示任何错误。

def outer_fn(msg):
    def inner_fn():
        print(msg)
    return inner_fn


outer_fn("text")

最佳答案

因为这是一件非常好的事情。

有时您调用一个函数是为了它的副作用(它会打印一些东西,将一些东西保存到数据库中,更改一些变量)并且对返回值不感兴趣。 Python 不会告诉您对返回值做任何事情,它只是为您调用函数。

关于python - 为什么返回的函数没有被赋值却没有报错?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56899086/

相关文章:

python - 无法在 Windows 上打开 Grakn Visualizer

python - 序列化程序在 Javascript 中添加了不必要的字段

python - 在字典中查找符合条件的值

python - 从配置文件自定义 python 结构化 (json) 日志记录中的键值

python-3.x - Flask 获取和编辑值

python - 如何重构 python 中的 switch case 语句?

python - 为什么 PyCharm 无法找到正确版本的 pip 来安装 Python 模块?

python: codingbat no_teen_sum - 为什么我的函数没有按预期工作?

python - 导入错误 : No module named gspread

python - 如何将python 3.4.3脚本编译为exe?