返回语句getName指定多元素:def getName(self):
return self.first_name, self.last_name
Python将返回基本上包含它们的容器对象。
在这种情况下,返回一个逗号分隔元素集创建元组。多重值只能在容器内返回。
让我们使用一个返回多个值的更简单的函数:def foo(a, b):
return a, b
可以查看通过以下方法生成的字节码:dis.dis,是Python字节码的反汇编程序。对于逗号分隔的值w/o-任何方括号,如下所示:>>> import dis
>>> def foo(a, b):
... return a,b
>>> dis.dis(foo)
2 0 LOAD_FAST 0 (a)
3 LOAD_FAST 1 (b)
6 BUILD_TUPLE 2
9 RETURN_VALUE>>> def foo_list(a, b):
... return [a, b]
>>> dis.dis(foo_list)
2 0 LOAD_FAST 0 (a)
3 LOAD_FAST 1 (b)
6 BUILD_LIST 2
9 RETURN_VALUE
返回的对象类型实际上取决于括号的存在(对于元组而言)。()如果至少有一个逗号,可以省略)。[]创建列表和{}布景。字典需要key:val成对。
如果该对象是容器类型的,它可以包含多个值,给出返回多个结果的印象。然后,通常的方法是直接解压它们:>>> first_name, last_name =
f.getName()
>>> print (first_name, last_name)