常用的时间函数如下
获取当前日期:time.time()
获取元组形式的时间戳:time.local(time.time())
格式化日期的函数(基于元组的形式进行格式化):
(1)time.asctime(time.local(time.time()))
(2)time.strftime(format[,t])
将格式字符串转换为时间戳:
time.strptime(str,fmt='%a %b %d %H:%M:%S %Y')
延迟执行:time.sleep([secs]),单位为秒
例1:
# -*- coding:utf-8 -*- import time #当前时间 print time.time() #时间戳形式 print time.localtime(time.time()) #简单可读形式 print time.asctime( time.localtime(time.time()) ) # 格式化成2016-03-20 11:45:39形式 print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) # 格式化成Sat Mar 28 22:24:24 2016形式 print time.strftime("%a %b %d %H:%M:%S %Y", time.localtime()) # 将格式字符串转换为时间戳 a = "Sat Mar 28 22:24:24 2016" print time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y"))
输出:
1481036968.19 time.struct_time(tm_year=2016, tm_mon=12, tm_mday=6, tm_hour=23, tm_min=9, tm_sec=28, tm_wday=1, tm_yday=341, tm_isdst=0) Tue Dec 06 23:09:28 2016 2016-12-06 23:09:28 Tue Dec 06 23:09:28 2016 1459175064.0
例2:某时间与当前比较,如果大于当前时间则调用某个脚本,否则等待半个小时候后继续判断
# -*- coding:utf-8 -*- import time import sys import os #判断当前时间是否超过某个输入的时间 def Fuctime(s): if time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))>s: return True else: return False while(1): if Fuctime('2016-12-05 00:00:00'): #调用某个路径下的脚本的简便方法 os.system("python ./../day_2/Prime.py ./../day_2/inti_prime.txt ./../day_2/res_prime.txt") break else: time.sleep(1800) continue
不积跬步,无以至千里; 不积小流,无以成江河;