Использовать стороннюю библиотеку. Например, readabledelta
- это подкласс timedelta
, который печатает текст, читаемый человеком.
>>> from readabledelta import readabledelta
>>> from datetime import timedelta
>>> print(readabledelta(timedelta(seconds=1)))
1 second
>>> print(readabledelta(timedelta(seconds=60)))
1 minute
>>> print(readabledelta(timedelta(seconds=60*60)))
1 hour
>>> print(readabledelta(timedelta(seconds=60*60*24)))
1 day
>>> print(readabledelta(timedelta(seconds=60*60*24*7)))
1 week
Вы не можете легко использовать месяцы или годы, потому что длина единицы не определена четко (месяц может составлять 28-31 день, а год может составлять 365-366 дней).