如何只调用一次函数就从一个函数访问多个值?

时间:2019-05-07 18:48:59

标签: python python-3.x

我正在浏览文档,以查找语料库列表中包含的单词。我注意到,每次使用该函数返回的值时,它都会再次调用整个函数。

def function1():
    print ("function1")
    x = 1
    y = 2
    return (x,y)

print (function1()[0])
print (function1()[1])

我得到的结果...

function1
1
function1
2

表示该函数运行了2次。有没有办法让函数一次运行?

所以希望输出看起来像...

function1
1
2

代码需要花费几个小时才能运行,我认为这是原因的一部分。编辑:我意识到我可以将输出元组分配给一个变量,但是我试图避免使用全局变量。

2 个答案:

答案 0 :(得分:1)

将function1结果分配给变量。

这是示例:

Example = function1()
print(Example[0])
print(Example[1])

它将仅运行一次该函数,并且您可以多次访问该函数返回的数据,而无需再次运行该函数。

答案 1 :(得分:0)

是的。 将函数的返回值分配给变量。 然后根据需要多次访问变量-无需再次调用该函数(除非该函数在再次调用时将为您提供不同的返回值-例如获取当前时间。但是您不会不会问你是否正在做类似的事情。)