Python获取秒级时间戳与毫秒级时间戳以及python中时间、日期、时间戳的转换

本文详细介绍了Python中如何获取秒级、毫秒级、微秒级时间戳,以及如何进行日期时间与时间戳之间的转换,包括日期转时间戳、时间戳转日期、时间格式的转换,并提供了相关示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、获取秒级时间戳与毫秒级时间戳、微秒级时间戳

 

import time
import datetime

t = time.time()

print (t)                       #原始时间数据
print (int(t))                  #秒级时间戳
print (int(round(t * 1000)))    #毫秒级时间戳
print (int(round(t * 1000000))) #微秒级时间戳

 

返回

1499825149.257892    #原始时间数据
1499825149           #秒级时间戳,10位
1499825149257        #毫秒级时间戳,13位
1499825149257892     #微秒级时间戳,16位

 

2、获取当前日期时间

dt    = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
dt_ms = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f') # 含微秒的日期时间,来源 比特量化
print(dt)
print(dt_ms)

返回

2018-09-06 21:54:46
2018-09-06 21:54:46.205213

 

3、将日期转为秒级时间戳

dt = '2018-01-01 10:40:30'
ts = int(time.mktime(time.strptime(dt, "%Y-%m-%d %H:%M:%S")))
print (ts)

返回

1514774430

 

4、将秒级时间戳转为日期

ts = 1515774430
dt = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(ts))
print(dt)

返回

2018-01-13 00:27:10

 

5、时间格式转成另一种时间格式

dt = '08/02/2019 01:00'
dt_new = datetime.datetime.strptime(dt, '%m/%d/%Y %H:%M').strftime('%Y-%m-%d %H:%M:%S')
print(dt_new)

返回

2019-08-02 01:00:00

 

6、转结构体时间struct_time

ta_dt = time.strptime("2018-09-06 21:54:46", '%Y-%m-%d %H:%M:%S')  #日期时间转结构体 
ta_ms = time.localtime(1486188476) #时间戳转结构体,注意时间戳要求为int,来源 比特量化
print(ta_dt)
print(ta_ms)

返回

time.struct_time(tm_year=2018, tm_mon=9, tm_mday=6, tm_hour=21, tm_min=54, tm_sec=46, tm_wday=3, tm_yday=249, tm_isdst=-1)
time.struct_time(tm_year=2017, tm_mon=2, tm_mday=4, tm_hour=14, tm_min=7, tm_sec=56, tm_wday=5, tm_yday=35, tm_isdst=0)

 

https://www.cnblogs.com/fangbei/p/python-time.html

 

1.简介

在编写代码时,往往涉及时间、日期、时间戳的相互转换。

2.示例

# 引入模块
import time, datetime

2.1 str类型的日期转换为时间戳

 

 1 # 字符类型的时间
 2 tss1 = '2013-10-10 23:40:00'
 3 # 转为时间数组
 4 timeArray = time.strptime(tss1, "%Y-%m-%d %H:%M:%S")
 5 print timeArray     
 6 # timeArray可以调用tm_year等
 7 print timeArray.tm_year   # 2013
 8 # 转为时间戳
 9 timeStamp = int(time.mktime(timeArray))
10 print timeStamp  # 1381419600
11 
12 
13 # 结果如下
14 time.struct_time(tm_year=2013, tm_mon=10, tm_mday=10, tm_hour=23, tm_min=40, tm_sec=0, tm_wday=3, tm_yday=283, tm_isdst=-1)
15 2013
16 1381419600

 

2.2 更改str类型日期的显示格式

 

 1 tss2 = "2013-10-10 23:40:00"
 2 # 转为数组
 3 timeArray = time.strptime(tss2, "%Y-%m-%d %H:%M:%S")
 4 # 转为其它显示格式
 5 otherStyleTime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)
 6 print otherStyleTime  # 2013/10/10 23:40:00
 7 
 8 tss3 = "2013/10/10 23:40:00"
 9 timeArray = time.strptime(tss3, "%Y/%m/%d %H:%M:%S")
10 otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
11 print otherStyleTime  # 2013-10-10 23:40:00

 

2.3 时间戳转换为指定格式的日期

 

 1 # 使用time
 2 timeStamp = 1381419600
 3 timeArray = time.localtime(timeStamp)
 4 otherStyleTime = time.strftime("%Y--%m--%d %H:%M:%S", timeArray)
 5 print(otherStyleTime)   # 2013--10--10 23:40:00
 6 # 使用datetime
 7 timeStamp = 1381419600
 8 dateArray = datetime.datetime.fromtimestamp(timeStamp)
 9 otherStyleTime = dateArray.strftime("%Y--%m--%d %H:%M:%S")
10 print(otherStyleTime)   # 2013--10--10 23:40:00
11 # 使用datetime,指定utc时间,相差8小时
12 timeStamp = 1381419600
13 dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
14 otherStyleTime = dateArray.strftime("%Y--%m--%d %H:%M:%S")
15 print(otherStyleTime)   # 2013--10--10 15:40:00

 

2.4 获取当前时间并且用指定格式显示

 

 1 # time获取当前时间戳
 2 now = int(time.time())     # 1533952277
 3 timeArray = time.localtime(now)
 4 print timeArray
 5 otherStyleTime = time.strftime("%Y--%m--%d %H:%M:%S", timeArray)
 6 print otherStyleTime    
 7 
 8 # 结果如下
 9 time.struct_time(tm_year=2018, tm_mon=8, tm_mday=11, tm_hour=9, tm_min=51, tm_sec=17, tm_wday=5, tm_yday=223, tm_isdst=0)
10 2018--08--11 09:51:17
11 
12 
13 # datetime获取当前时间,数组格式
14 now = datetime.datetime.now()
15 print now
16 otherStyleTime = now.strftime("%Y--%m--%d %H:%M:%S")
17 print otherStyleTime  
18 
19 # 结果如下:
20 2018-08-11 09:51:17.362986
21 2018--08--11 09:51:17 

 

https://www.cnblogs.com/jfl-xx/p/8024596.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值