1.将字符串的时间"2017-10-10 23:40:00"转换为时间戳和时间元组
time.strptime(str,fmt=fmt_str)
根据fmt的格式把一个时间字符串解析为时间元组,str需要和fmt一一对应,如strptime(‘20 3’,“%d %m”)%d表示一个月第几天,%m表示一年的第几
import time
times = “2017-10-10 23:40:00”
formatTime = time.strptime(times,’%Y-%m-%d %H:%M:%S’)
print(formatTime)
print(time.mktime(formatTime))#将时间元组转换成时间戳,从1970年到times时间,
输出:
time.struct_time(tm_year=2017, tm_mon=10, tm_mday=10, tm_hour=23, tm_min=40, tm_sec=0, tm_wday=1, tm_yday=283, tm_isdst=-1)
1507650000.0
2.字符串格式更改。如提time = “2017-10-10 23:40:00”,想改为 time= “2017/10/10 23:40:00”
times = "2000-10-10 23:40:00"
formatTime=time.strptime(times,'%Y-%m-%d %H:%M:%S')#先变为时间元组
print(formatTime)
print(time.strftime('%Y/%m/%d %H:%M:%S',formatTime))# strftime表示时间的格式。
输出格式:
time.struct_time(tm_year=2000, tm_mon=10, tm_mday=10, tm_hour=23, tm_min=40, tm_sec=0, tm_wday=1, tm_yday=284, tm_isdst=-1)
2000/10/10 23:40:00
3.获取当前时间戳转换为指定格式日期
now = time.time()
print(now)
threeAgo=now-60*60*24*3
formaTime=time.localtime(now)#把时间戳转换为元组。
print(formaTime)
#再用strf函数转换为时间格式。
print(time.strftime('%Y/%m/%d %H:%M:%S',formaTime))
输出结果:
1552611865.7502038
time.struct_time(tm_year=2019, tm_mon=3, tm_mday=15, tm_hour=9, tm_min=4, tm_sec=25, tm_wday=4, tm_yday=74, tm_isdst=0)
2019/03/15 09:04:25
4.获得三天前的时间
threeAgo = time.time() - 60*60*24*3
threeAgo=time.localtime(threeAgo) #把时间戳转换为元组
print(time.strftime('%Y-%m-%d %H:%M:%S',threeAgo))
输出结果
2019-03-12 09:10:20