python - read - De stat(). St_mtime a datetime?
posixpath python (1)
¿Cuál es la forma más idiomática / eficiente de convertir un tiempo de modificación recuperado de una llamada stat()
a un objeto de datetime
y datetime
? Se me ocurrió lo siguiente (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)
Parece una ronda, y es un poco sorprendente que tenga que programar la época de Unix allí. ¿Hay una manera más directa?
Pruebe datetime.fromtimestamp(statResult.st_mtime)
p.ej
import datetime
mod_timestamp = datetime.datetime.fromtimestamp(path.getmtime(<YOUR_PATH_HERE>))