Как преобразовать объект datetime или date в метку времени POSIX в python? Существуют методы создания объекта datetime из метки времени, но я, похоже, не нахожу каких-либо очевидных способов сделать операцию противоположным способом.Преобразование даты и времени в POSIX
40
A
ответ
48
import time, datetime
d = datetime.datetime.now()
print time.mktime(d.timetuple())
21
Для расчетов UTC, calendar.timegm
является обратным time.gmtime
.
import calendar, datetime
d = datetime.datetime.utcnow()
print calendar.timegm(d.timetuple())
4
В Python, time.time() может возвращать секунды как число с плавающей точкой, который включает в себя десятичную компонент с микросекунд. Чтобы преобразовать дату-время обратно в это представление, вам нужно добавить компонент микросекунды, потому что прямой timetuple не включает его.
import time, datetime
posix_now = time.time()
d = datetime.datetime.fromtimestamp(posix_now)
no_microseconds_time = time.mktime(d.timetuple())
has_microseconds_time = time.mktime(d.timetuple()) + d.microsecond * 0.000001
print posix_now
print no_microseconds_time
print has_microseconds_time
2
Обратите внимание, что Python сейчас (3.5.2) включает в себя built-in method для этого в datetime
объектов:
>>> import datetime
>>> now = datetime.datetime.now()
>>> now.timestamp() # Local time
1509315202.161655
>>> now.replace(tzinfo=datetime.timezone.utc).timestamp() # UTC
1509329602.161655
Смежные вопросы
- 1. Форматирование даты и времени SAS как POSIX
- 2. Преобразование даты и времени
- 3. Преобразование даты и времени
- 4. Преобразование даты и времени
- 5. Преобразование даты и времени
- 6. Преобразование даты, даты и времени в timestamp
- 7. Преобразование даты и времени в формат даты и времени
- 8. Преобразование даты и времени в метку времени
- 9. R: преобразование формата времени JSON в POSIX
- 10. Informatica Преобразование даты и времени
- 11. ASP.NET Преобразование даты и времени
- 12. ctime() и преобразование даты/времени
- 13. Преобразование даты и времени Python
- 14. Преобразование данных даты и времени
- 15. Преобразование формата даты и времени?
- 16. R Преобразование даты времени
- 17. Java: преобразование времени даты
- 18. Преобразование даты и времени в python
- 19. Преобразование даты и времени в формат г
- 20. Преобразование даты и времени в строку (C#)
- 21. Преобразование даты и времени в числовое
- 22. Datagridview преобразование даты и времени в строку
- 23. Преобразование даты и времени в Unix timestamp
- 24. Преобразование даты и времени строку в числовом
- 25. Преобразование формата даты и времени в питона
- 26. Joda: Преобразование даты и времени в DateTime
- 27. преобразование строки в формат даты и времени
- 28. Преобразование даты и времени в числовое представление
- 29. Преобразование формата даты и времени в секунды
- 30. Преобразование даты и времени в timestamp
Спасибо. Я знал, что это должно быть чем-то глупо простым, но я не мог понять. – 2008-10-31 21:53:12
Кажется, что в зависимости от платформы время не имеет метода mktime – Tirno 2009-03-19 22:05:51
Обратите внимание, что это дает местное время, а не UTC. Для UTC см. Ответ [fixermark] (http://stackoverflow.com/q/5872022/60075). – 2011-11-23 23:44:04