Проверьте время, чтобы убедиться, что я не превышаю максимальную длительность, установленную в цикле? (Python) - PullRequest
0 голосов
/ 09 августа 2011

Какую функцию модуля времени я могу использовать, чтобы получить время и вычислить его?

MAX_DURATION = 60

startTime = get the time
while(True):
    wait random seconds
    curTime = get the time
    if curTime - startTime > MAX_DURATION:
        break

Ответы [ 2 ]

3 голосов
/ 09 августа 2011
import time

time.time()

Это должно соответствовать вашим потребностям.

0 голосов
/ 09 августа 2011

Вам понадобится datetime и особенно timedelta: http://docs.python.org/library/datetime.html

Например:

import time
from datetime import datetime, timedelta
import random

MAX_DURATION = timedelta(seconds=60)
start = datetime.now()
while 1:
    time.sleep(random.random())
    now = datetime.now()
    if now - start > MAX_DURATION:
        break

(конечно, в этом очень простом случае может быть лучшепросто использовать time.time() (который возвращает отметку времени ), а затем сравнить это с количеством секунд (например, time.time() - start > MAX_SECONDS) ... Но именно так вы бы сделали это в «полностью общем»способ)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...