python: изменить время на int с «2009-11-10T23: 00: 00Z» - PullRequest
0 голосов
/ 29 июня 2018

Может ли кто-нибудь помочь мне преобразовать время в формат, который принимает приток. Цель состоит в том, чтобы передать время (включая миллисекунды) прибору.

Спасибо

Ответы [ 2 ]

0 голосов
/ 29 июня 2018

В Python вы можете преобразовать строковое представление в объект datetime, преобразовать его в struct_time, а затем преобразовать в целое число, представляющее UNIX время эпохи .

from datetime import datetime
from time import mktime

time_str = "2009-11-10T23:00:00Z"
time_fmt = "%Y-%m-%dT%H:%M:%SZ"
dt = datetime.strptime(time_str, time_fmt)
time_tuple = dt.timetuple()
epoch = mktime(time_tuple)
print(epoch)

Выход:

1257912000.0
0 голосов
/ 29 июня 2018

Вам, вероятно, нужно время эпохи для притокаDB

Попытка:

import datetime
import time

t = "2009-11-10T23:00:00Z"
print( time.mktime(datetime.datetime.strptime(t, "%Y-%m-%dT%H:%M:%SZ").timetuple()) )

Выход:

1257874200.0
...