常用的时间函数如下
获取当前日期: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:
代码语言:javascript复制# -*- 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"))
输出为
代码语言:javascript复制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:某时间与当前比较,如果大于当前时间则调用某个脚本,否则等待半个小时候后继续判断
#判断当前时间是否超过某个输入的时间
代码语言:javascript复制# -*- 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
python中时间日期格式化符号:
- %y 两位数的年份表示(00-99)
- %Y 四位数的年份表示(000-9999)
- %m 月份(01-12)
- %d 月内中的一天(0-31)
- %H 24小时制小时数(0-23)
- %I 12小时制小时数(01-12)
- %M 分钟数(00=59)
- %S 秒(00-59)
- %a 本地简化星期名称
- %A 本地完整星期名称
- %b 本地简化的月份名称
- %B 本地完整的月份名称
- %c 本地相应的日期表示和时间表示
- %j 年内的一天(001-366)
- %p 本地A.M.或P.M.的等价符
- %U 一年中的星期数(00-53)星期天为星期的开始
- %w 星期(0-6),星期天为星期的开始
- %W 一年中的星期数(00-53)星期一为星期的开始
- %x 本地相应的日期表示
- %X 本地相应的时间表示
- %Z 当前时区的名称
- %% %号本身