1、获取时间戳
代码如下:
import time
import datetime
t = time.time()
print (t) #原始时间数据
print (int(t)) #秒级时间戳
print (int(round(t * 1000))) #毫秒级时间戳
nowTime = lambda:int(round(t * 1000))
print (nowTime()); #毫秒级时间戳,基于lambda
print (datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')) #日期格式化
结果:
1552267863.7501628
1552267863
1552267863750
1552267863750
2019-03-11 09:31:03
时间格式说明:
- %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 当前时区的名称
- %% %号本身
2、将秒数转换为时间
方法代码:
import time
def getTime(seconds):
timeArray = time.localtime(seconds)
otherStyleTime = time.strftime("%H:%M:%S", timeArray)
print(otherStyleTime)
if __name__ == '__main__':
time = getTime(1551863258)
print(time)
结果:
17:07:38
Process finished with exit code 0
上面例子中的%H:%M:%S
可以根据需要设置为别的格式,如%Y_%m_%d %H:%M:%S
;
3、将时间转化为秒数
示例代码:
import time
import datetime
def composeTime(time1):
time2 = datetime.datetime.strptime(time1, "%Y_%m_%d %H:%M:%S")
time3 = time.mktime(time2.timetuple())
time4 = int(time3)
return time4
if __name__ == '__main__':
time = composeTime("2019_03_06 17:07:38")
print(time)
结果:
1551863258
Process finished with exit code 0
说明:上面代码中之所以加了个int(time3)
是因为time3的值其实是1551863258.0
,故以此方法来去掉后边的小数点;