Подтвердить что ты не робот

Каков самый простой способ получить текущее время GMT в формате timestamp Unix?

Python предоставляет различные пакеты (datetime, time, calendar), как можно видеть здесь, чтобы иметь дело со временем. Я сделал большую ошибку, используя следующее, чтобы получить текущее GMT ​​time.mktime(datetime.datetime.utcnow().timetuple())

Что такое простой способ получить текущее время GMT в отметке времени Unix?

4b9b3361

Ответ 1

Я бы использовал time.time(), чтобы получить временную метку за считанные секунды с эпохи.

import time

time.time()

Вывод:

1369550494.884832

Для стандартной реализации CPython на большинстве платформ это вернет значение UTC.

Ответ 2

import time

int(time.time()) 

Выход:

1521462189

Ответ 4

Или просто с помощью стандартного модуля datetime

In [2]: from datetime import timezone, datetime
   ...: int(datetime.now(tz=timezone.utc).timestamp() * 1000)
   ...: 
Out[2]: 1514901741720

Вы можете обрезать или умножить в зависимости от разрешения, которое вы хотите. Этот пример выводит миллис.

Если вам нужна правильная метка времени Unix (в секундах), удалите * 1000

Ответ 5

Я нахожу это очень удобным:

from time import time

time()

Ответ 6

Мне нравится этот метод:

import datetime, time

dts = datetime.datetime.utcnow()
epochtime = round(time.mktime(dts.timetuple()) + dts.microsecond/1e6)

Другие методы, опубликованные здесь, не гарантируют выдачу UTC на всех платформах или сообщают только о целых секундах. Если вы хотите полное разрешение, это работает, с точностью до микросекунды.

Ответ 7

from datetime import datetime as dt
dt.utcnow().strftime("%s")

Выход:

1544524990