python如何实现程序定时执行的功能?

Python011

python如何实现程序定时执行的功能?,第1张

sleep就可以吧,把程序作为一个线程,启动线程,里面加个sleep,示例如下:\x0d\x0aimport threading\x0d\x0aimport time\x0d\x0aclass Test(threading.Thread):\x0d\x0adef __init__(self):\x0d\x0apass\x0d\x0a\x0d\x0adef test(self):\x0d\x0aprint 'run test!'\x0d\x0a\x0d\x0adef run(self):\x0d\x0awhile True:\x0d\x0aprint time.strftime('%Y-%m-%d %H:%M:%S')\x0d\x0aself.test()\x0d\x0atime.sleep(5)\x0d\x0a#test...\x0d\x0aa=Test()\x0d\x0aa.run()\x0d\x0a#...test

python定时程序(每隔一段时间执行指定函数)

[python] view plain copy

import os

import time

def print_ts(message):

print "[%s] %s"%(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()), message)

def run(interval, command):

print_ts("-"*100)

print_ts("Command %s"%command)

print_ts("Starting every %s seconds."%interval)

print_ts("-"*100)

while True:

try:

# sleep for the remaining seconds of interval

time_remaining = interval-time.time()%interval

print_ts("Sleeping until %s (%s seconds)..."%((time.ctime(time.time()+time_remaining)), time_remaining))

time.sleep(time_remaining)

print_ts("Starting command.")

# execute the command

status = os.system(command)

print_ts("-"*100)

print_ts("Command status = %s."%status)

except Exception, e:

print e

if __name__=="__main__":

interval = 5

command = r"ls"

run(interval, command)