首页 > 解决方案 > 如何创建一个列表来存储更改函数的所有先前值

问题描述

我有一个不断变化的变量,我想将变量的所有先前值存储到一个列表中,但是在下面的代码中,当我尝试追加到列表时,它只是将列表中的数字替换为当前变量的值,并且列表的长度始终保持为 1

while True:
    degrees = []
    a = get_baering_in_degrees()
    degrees.append(a)
    print(len(degrees))
    print(degrees)

在这种情况下,get_bearing_in_degrees() 是一个函数,它返回一个不断变化的值,当我打印度数列表的长度时,它只是保持在 1。此外,这段代码不断循环一段设定的时间,但在这里我'刚刚使用 while true 循环来表示它。

标签: pythonlistreferenceappendglobal-variables

解决方案


您需要degrees = []在 while 循环之外定义。

像这样的东西:

degrees = []
while True:
    a = get_baering_in_degrees()
    degrees.append(a)
    print(len(degrees))
    print(degrees)

推荐阅读