首页 > 代码库 > Python 模块——time和datetime

Python 模块——time和datetime

时间相关的操作,时间有三种表示方式:

  • 时间戳               1970年1月1日之后的秒,即:time.time()
  • 格式化的字符串    2014-11-11 11:11,    即:time.strftime(‘%Y-%m-%d‘)
  • 结构化时间          元组包含了:年、日、星期等... time.struct_time    即:time.localtime()

time模块

import time

print(time.time())   #输出1495018452.927428
print(time.ctime())  #输出Wed May 17 18:54:48 2017 ,当前系统时间

#struct_time对象
print(time.gmtime()) #输出time.struct_time(tm_year=2017, tm_mon=5, tm_mday=17, tm_hour=11, tm_min=0, tm_sec=56, tm_wday=2, tm_yday=137, tm_isdst=0)
#注意:gmtime的时间是utc时间,即格林威治时间。加8之后才是北京时间(东八区)。localtime是本时区时间。
print(time.localtime()) #输出time.struct_time(tm_year=2017, tm_mon=5, tm_mday=17, tm_hour=19, tm_min=11, tm_sec=28, tm_wday=2, tm_yday=137, tm_isdst=0)
time_obj = time.gmtime()
print("{0}-{1}-{2}".format(time_obj.tm_year, time_obj.tm_mon, time_obj.tm_mday))

print(time.mktime(time.localtime()))  #struct_time对象转为时间戳

time.sleep(3)   #程序延迟3秒,再往后继续执行

print(time.strftime(‘%Y-%m-%d %H:%M:%S‘, time.localtime()))  #将struct_time格式转成指定的字符串格式
print(time.strptime("2010-5-18 15:06", "%Y-%m-%d %H:%M"))    #将字符串格式转化成struct_time格式

  

datetime模块

import datetime
import time

print(datetime.date.today()) #输出2017-05-17
print(datetime.date.fromtimestamp(time.time()))  #输出2017-05-17,将时间戳转换为日期格式
current_time =datetime.datetime.now()
print(current_time)    #输出2017-05-17 22:03:40.630623
print(current_time.timetuple())  #返回strunt_time格式
print(current_time.replace(2015, 9, 10)) #替换当前时间中的指定部分
print(datetime.datetime.now() + datetime.timedelta(days=10))  #比现在加10天
print(datetime.datetime.now() + datetime.timedelta(days=-10)) #比现在减10天
print(datetime.datetime.now() + datetime.timedelta(hours=10)) #比现在加10小时
print(datetime.datetime.now() + datetime.timedelta(seconds=10)) #比现在加10秒
print(datetime.datetime.strptime(‘21/11/06 16:03‘, ‘%d/%m/%y %H:%M‘))  #将字符串转为时间

  

Python 模块——time和datetime