我想知道如何获取函数返回的值 - python返回语句实际返回的内容。
考虑以下代码:
def foo():
y = 5
return y
调用foo()
时,我们得到值5
。
x = foo()
x
绑定整数对象5
。
这是什么意思?返回声明实际上在这里返回什么? int
对象5
?或变量名y
?或绑定到对象5
?或其他什么?
我们如何获得return语句返回的值?
答案 0 :(得分:1)
x绑定整数对象5.
是的,x
是一个包含对整数对象5的引用的变量,y
也保存对该引用的引用。
返回声明实际上在这里返回什么? int对象5? 还是变量名y?或者绑定到对象5?或其他什么?
确切地说,返回的是整数对象5的引用。举个例子,看看这个:
In [1]: def foo():
...: y = 5
...: print(id(y))
...: return y
...:
In [2]: x = foo()
4297370816
In [3]: id(x)
Out[3]: 4297370816
我们如何获得return语句返回的值?
访问return
传递给来电者的参考。
答案 1 :(得分:0)
如果您有任何疑问,可以随时访问Python的REPL并尝试使用值和函数。有一个type()
指令可以与值和函数一起使用,例如:
Python 3.6.2 (default, Jul 19 2017, 13:09:21)
[GCC 7.1.1 20170622 (Red Hat 7.1.1-3)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> def foo():
... y=5
... return y
...
>>> type(foo())
<class 'int'>
关于foo()
函数,y
是一个包含值int
的本地绑定。 return
语句返回变量y
的值,并且在foo()
函数范围之外不知道此绑定。