Как найти время с помощью Python? - PullRequest
0 голосов
/ 14 декабря 2010

Я хочу запустить свою функцию, а затем я хочу найти текущее время, используя python.

, затем, скажем, через 2 часа моя функция должна снова запуститься.

что мне делать?

Ответы [ 4 ]

2 голосов
/ 14 декабря 2010

для определения текущего времени вы можете использовать питоны datetime модуль

from datetime import datetime
print datetime.datetime.now();

Запускать скрипт каждые два часа - это работа crontab deamon. Это особый процесс в системах UNIX, которые выполняли команды в определенные периоды времени.

Подробнее о настройке заданий cron читайте здесь: http://blog.dreamhosters.com/kbase/index.cgi?area=2506

2 голосов
/ 14 декабря 2010

Есть несколько способов найти время в Python:

import time
print time.time() # unix timestamp, seconds from 1970

import datetime
print datetime.datetime.now()

time.sleep(7200) # sleep for 2 hours
1 голос
/ 14 декабря 2010
import datetime
import time

def func():
    # your function
    pass


while True:
    func() # call you function
    print datetime.datetime.now() # print current datetime
    time.sleep(2*60*60) # sleep for 2 hours

Однако лучшим способом для запланированной операции было бы использование cron, как предложил @Silver Light.

0 голосов
/ 14 декабря 2010

Будет ли ваш процесс работать часами и заниматься другими делами?Если это так, вы можете пометить время следующим образом:

from time import time

start_time = time()   # current time expressed as seconds since 1/1/1970

...

now = time()
if (now - start_time) >= (2 * 60 * 60):   # number of seconds in 2 hours
  do_function()

В противном случае, если вам не нужно будет что-либо делать в течение 2 часов, вы можете сделать:предположительно ваша функция будет указывать, можно ли выйти из основного цикла.

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