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

От stat(). St_mtime до datetime?

Какой самый идиоматический/эффективный способ конвертировать из времени модификации, полученного из вызова stat(), в объект datetime? Я придумал следующее (python3):

from datetime import datetime, timedelta, timezone
from pathlib import Path

path = Path('foo')
path.touch()
statResult = path.stat()
epoch = datetime(1970, 1, 1, tzinfo=timezone.utc)
modified = epoch + timedelta(seconds=statResult.st_mtime)
print('modified', modified)

Похоже на бой, и немного удивительно, что мне приходится жестко кодировать эпоху Unix. Есть ли более прямой способ?

4b9b3361

Ответ 2

Это работает для меня, если вы хотите читаемую строку:

import datetime
mtime = path.stat().st_mtime
timestamp_str = datetime.datetime.fromtimestamp(mtime).strftime('%Y-%m-%d-%H:%M')