改变增长率

时间:2016-12-04 22:19:47

标签: python python-2.7

thing = 0
while True:
    code = raw_input("")
    thing += len(code)
    if code == "doubler":
        thing += len(code) * 2

我想将thing的增长率加倍。但是如果我写thing = len(code)*2,它会将值重置为输入的两倍。如果我写thing += len(code)*2,它只会增加一倍的输入,并且不会影响其他输入。

2 个答案:

答案 0 :(得分:0)

好?

thing = 0
add = 1
limit = 50
while limit > 0:
    print thing
    thing += add
    add = add * 2
    limit -= 1

答案 1 :(得分:0)

我认为,只要len(code)等于code,以及未来的输入,您想要的是code=="doubler"的效果加倍。然后,您需要跟踪遇到"doubler"的次数。以下内容可能对您有用:

thing = 0
scale = 1
while True:
    code = raw_input("")
    thing += scale*len(code)
    if code == "doubler":
        scale *= 2