2015-10-15 38 views
0

我想知道是否有一个优雅的方法来查看是否可以检查在while循环中不断变化的值是否可以检查并停止while循环如果值停止更改并保持不变。检查一个值在While循环中是否仍然保持不变Python

例如:

Value = 0 
while True: 
    value changes everytime 
    (if value still the same break) 
+0

你怎么定义仍然一样吗?像它应该匹配以前的迭代值或任何已经发生的值?请在问题中添加更多详细信息 – MohitC

+0

您可以将其保存到一个缓冲区中,该缓冲区将存储该值并在每次更改值时更新此缓冲区 – MohitC

+0

在更多迭代之间保持不变。 唯一的方法是保存在缓冲区中? – RedVelvet

回答

4

这个怎么样呢?顺便说一句:修复你的拼写错误while不是While在python中。

value = 0 
while True: 
    old_value, value = value, way_to_new_value 
    if value == old_value: break 
+0

您能解释一下old_value,value = value,way_to_new_value的工作原理吗? – RedVelvet

+1

那么''way_to_new_value'代表你的操作改变了值。该分配是多行分配的缩写。 – luoluo

+0

哇,那是我当时想的,令人印象深刻的这个双重任务。 – RedVelvet

0

您可以:

value_old = 0 
value_new = 1 
value = [value_old, value_new] 
while True: 
    # change 

    # test 
    if value[0] == value[1]: 
     break 
    else: 
     value = [value[1], value[0]] 
1
previous = None 
current = object() 
while previous != current: 
    previous = current 
    current = ... 
相关问题