python乘法而不是加法

python乘法而不是加法,python,Python,我正在创建的程序是乘法而不是加法。有什么问题 while True: winsound.Beep(4000, beatlength) winsound.Beep(3500, beatlength) stbr = stbr + stbr print stbr if stbr==25: break 你把这个数字加到它自己身上,这当然相当于把它乘以2。改为添加一个,方法是更改: stb

我正在创建的程序是乘法而不是加法。有什么问题

    while True:
        winsound.Beep(4000, beatlength)
        winsound.Beep(3500, beatlength)
        stbr = stbr + stbr
        print stbr


        if stbr==25:
            break

你把这个数字加到它自己身上,这当然相当于把它乘以2。改为添加一个,方法是更改:

stbr = stbr + stbr
致:


那么你的错误是什么呢?什么是stbr?
stbr
?它是一个等于0的变量,在程序发出25次嘟嘟声后,它会中断循环。如果stbr为0,则它将永远不会退出,因为0+0仍然为0。你也可以更简单地写
stbr*=2
,如果你想把stbr加倍,如果你想加一,那么
stbr+=1
就是你所需要的。正如AChampion所说,这个循环永远不会中断。任何你不使用for循环的原因,例如范围(25)中的stbr的
xrange
if python2)。这意味着阅读
stbr+=1
,没有作业,stbr将永远不会更改。谢谢通知我,但我不明白OP真正想要什么。但是如果OP只想运行这个循环25次,我认为在xrange(25)
中为I使用
会更简单。
stbr = stbr + stbr
stbr += 1