【问题标题】:Python - function won't returnPython - 函数不会返回
【发布时间】:2014-07-04 09:47:51
【问题描述】:

我正在学习 Python,但遇到了问题。这都是关于定义功能的。可能是我没看懂return函数……

def adding(x, y):
    tuple1 = ()
    ans = x + y
    tuple1 = tuple1 + (ans,)
    return tuple1

adding(3, 2)
tuple1

当我在 Python 中运行它时,它会继续 adding(3, 2),但不会显示 tuple1(即使我打印它...),它说 tuple1 未定义,为什么就是它?我以为return会返回计算出的对象并将其存储在内存中。

【问题讨论】:

    标签: python return function


    【解决方案1】:

    tuple1adding() 函数中的本地名称。您需要将函数的返回值存储在 new 名称中:

    return_value = adding(3, 2)
    

    现在您可以使用return_value 查看从adding() 返回的对象。

    您甚至可以用tuple1 代替return_value,但它只会看起来adding() 中使用的名称相同。在函数之外,名称是不同作用域的一部分,并且独立于函数内部使用的本地名称(尽管函数中的名称​​可以引用与模块相同的东西,或全局范围)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-18
      • 2018-03-13
      • 1970-01-01
      • 1970-01-01
      • 2013-03-25
      • 2011-02-14
      相关资源
      最近更新 更多