Python:如何暂停一段时间的True循环?

时间:2014-05-22 19:26:27

标签: loops sleep python-3.2

所以我正在制作一个python版本的cookie Clicker:D 要将cps添加到cookie计数器,我使用以下代码:

while True:
    cps = b1*1 + b2*5 + b3*10 + b4*20 + b5*25
    c=c+cps
    time.sleep(60)
    print('you now have %s cookies' %c)

注意:b1,b2等以及不同cookie生产者的数量

问题是,time.sleep暂停整个脚本,而不仅仅是上面可以看到的while循环

BTW这是我的第一篇文章,对不起,如果我做错了什么:/ 感谢您阅读:P

2 个答案:

答案 0 :(得分:0)

据我所知,您有两种选择:

  1. 您可以测量每次更新cookieamount c的调用之间的时间并相应地相乘。
  2. 你创建一个新主题。然后,sleep会暂停你的线程来更新你的cookieamount。

答案 1 :(得分:0)

你可以为这个循环创建一个方法,然后为此开始一个新的线程,之后你只需要调用.sleep(),它只会使该线程暂停给定的时间而不是整个代码。 检查Link它将有助于多线程。

import threading

def worker():
    """your code in this method"""


t = threading.Thread(target=worker)
t.start()