如何在Python中检查变量的值是否已更新
我是python新手,这里我有一个简短的问题 比如在while循环中,我有一个名为center的变量,center是一个列表,如上图所示:如何在Python中检查变量的值是否已更新,python,Python,我是python新手,这里我有一个简短的问题 比如在while循环中,我有一个名为center的变量,center是一个列表,如上图所示: M = cv2.moments(c) center = (int(M["m10"] / M["m00"]), int(M["m01"] / M["m00"])) 中心始终是[x,y],因为M始终是动态变化的,所以中心也是动态变化的 我的问题是如何知道中心是否更新?如果更新了,我如何从数学上比较新中心与以前的中心 谢谢 您需要跟踪中心。为此
M = cv2.moments(c)
center = (int(M["m10"] / M["m00"]), int(M["m01"] / M["m00"]))
中心始终是[x,y],因为M始终是动态变化的,所以中心也是动态变化的
我的问题是如何知道中心是否更新?如果更新了,我如何从数学上比较新中心与以前的中心
谢谢 您需要跟踪
中心
。为此,请创建一个变量来保存上一个值。这可以在开始时初始化为None
,因为您没有以前的值。例如:
previous_center = None
while True:
#
# Your loop code
#
M = cv2.moments(c)
center = (int(M["m10"] / M["m00"]), int(M["m01"] / M["m00"]))
if center != previous_center:
print("New center", center)
previous_center = center
最好是将上一个值保留在不同的变量中。为什么不创建一个记录中心历史的列表,并在每次更新时附加到该列表中?