我遇到了在函数中返回多个值并在不同函数中使用它们的问题。为简单起见:
def menu1():
system=system1
choice=1
return system,choice
def menu2():
option = menu1() #this assigns the option a tuple based on the first function.
if option==system1:
print"yes"
if option==1:
print"yes"
menu2()
如何基于从前一个函数获取值来正确地为选项提供“system1”或“1”的值?
答案 0 :(得分:1)
您可以像对待任何其他类型的序列一样索引元组:
def menu2():
option = menu1()
if option[0]==system1:
print"yes"
if option[1]==1:
print"yes"
序列在Python中为0索引,因此第一个元素在索引0处,第二个元素在索引1处,依此类推。
但是,在我看来,做以下事情更清楚:
def menu2():
system, choice = menu1()
if system==system1:
print"yes"
if choice==1:
print"yes"
这称为元组解包,它可用于将元组的值拆分为多个要分配的名称。