Python - 时间戳转换
Python - Timestamp Conversion
我已经将一些传感器数据转换成 CSV
格式。数据包含一个timestamp
属性,分为两部分如下:
measurement_timestamp_begin:
seconds: 3733032665
fractions: 3056174174
我需要将其转换为标准的 UNIX 时间戳格式。我看到了几篇关于进行转换的帖子,但每个方法都收到一个参数。我不明白 fraction 部分。意思是seconds.fraction?例如3733032665.3056174174.
以下代码将上述时间戳格式转换为标准 UNIX 时间戳格式。
#!/usr/bin/env python
import datetime, time
unix_epoch = datetime.date(*time.gmtime(0)[0:3])
ntp_epoch = datetime.date(1900, 1, 1)
ntp_delta = (unix_epoch - ntp_epoch).days * 24 * 3600
def ntp_to_unix_time(date):
return (date - ntp_delta)
print datetime.datetime.fromtimestamp(int(ntp_to_unix_time(3733032665.3056174174))).strftime('%Y-%m-%d %H:%M:%S')
我已经将一些传感器数据转换成 CSV
格式。数据包含一个timestamp
属性,分为两部分如下:
measurement_timestamp_begin:
seconds: 3733032665
fractions: 3056174174
我需要将其转换为标准的 UNIX 时间戳格式。我看到了几篇关于进行转换的帖子,但每个方法都收到一个参数。我不明白 fraction 部分。意思是seconds.fraction?例如3733032665.3056174174.
以下代码将上述时间戳格式转换为标准 UNIX 时间戳格式。
#!/usr/bin/env python
import datetime, time
unix_epoch = datetime.date(*time.gmtime(0)[0:3])
ntp_epoch = datetime.date(1900, 1, 1)
ntp_delta = (unix_epoch - ntp_epoch).days * 24 * 3600
def ntp_to_unix_time(date):
return (date - ntp_delta)
print datetime.datetime.fromtimestamp(int(ntp_to_unix_time(3733032665.3056174174))).strftime('%Y-%m-%d %H:%M:%S')