Разница во времени Python

У меня есть два объекта времени.

пример

time.struct_time(tm_year=2010, tm_mon=9, tm_mday=24, tm_hour=19, tm_min=13, tm_sec=37, tm_wday=4, tm_yday=267, tm_isdst=-1) time.struct_time(tm_year=2010, tm_mon=9, tm_mday=25, tm_hour=13, tm_min=7, tm_sec=25, tm_wday=5, tm_yday=268, tm_isdst=-1) 

Я хочу иметь разницу между этими двумя. Как я мог это сделать? Мне нужны только минуты и секунды, а также продолжительность этих двух.

  • Как удалить неотвернутые данные из объекта datetime Python
  • Python - преобразовать строку datetime UTC в локальное время
  • Конкатенирование Pandas datetime
  • Python суммирует время
  • Разбор разных форматов дат из feedparser в python?
  • Спецификатор месяца Python datetime.strptime не работает
  • Как получить datetime из строки, содержащей «2nd» для даты в Python?
  • вычесть два раза в python
  • 4 Solutions collect form web for “Разница во времени Python”

    Time экземпляры не поддерживают операцию вычитания. Учитывая, что одним из способов решения этой проблемы было бы преобразовать время в секундах с эпохи, а затем найти разницу, используйте:

     >>> t1 = time.localtime() >>> t1 time.struct_time(tm_year=2010, tm_mon=10, tm_mday=13, tm_hour=10, tm_min=12, tm_sec=27, tm_wday=2, tm_yday=286, tm_isdst=0) >>> t2 = time.gmtime() >>> t2 time.struct_time(tm_year=2010, tm_mon=10, tm_mday=13, tm_hour=4, tm_min=42, tm_sec=37, tm_wday=2, tm_yday=286, tm_isdst=0) >>> (time.mktime(t1) - time.mktime(t2)) / 60 329.83333333333331 
     >>> t1 = time.mktime(time.strptime("10 Oct 10", "%d %b %y")) >>> t2 = time.mktime(time.strptime("15 Oct 10", "%d %b %y")) >>> print(datetime.timedelta(seconds=t2-t1)) 5 days, 0:00:00 

    Вы можете использовать time.mktime(t) с объектом struct_time (переданным как «t»), чтобы преобразовать его в значение с плавающей запятой «секунды с момента». Затем вы можете вычесть их, чтобы получить разницу в секундах, и разделить на 60, чтобы получить разницу в минутах.

    Есть еще один способ найти разницу во времени между любыми двумя датами (не лучше, чем предыдущее решение, я думаю):

      >>> import datetime >>> dt1 = datetime.datetime.strptime("10 Oct 10", "%d %b %y") >>> dt2 = datetime.datetime.strptime("15 Oct 10", "%d %b %y") >>> (dt2 - dt1).days 5 >>> (dt2 - dt1).seconds 0 >>> 

    Это даст разницу в днях или секундах или их комбинации. Тип для (dt2 – dt1) равен datetime.timedelta. Загляните в библиотеку для получения дополнительной информации.

    Interesting Posts

    Как получить уведомление на рынке Google

    Почему нос находит тесты в файлах с разрешением 644?

    PyCharm, что такое python_stubs?

    Как STDIN и STDOUT с PHP и Python использовать html2text и получить отформатированный текст?

    Обучение регистрации и проверка достоверности в тензокартоне

    Как я могу сбросить строку в Python 2?

    django – DetailView, как отображать две модели одновременно

    Улучшить pandas (PyTables?) Производительность записи таблицы HDF5

    Лучший способ добавить переменную окружения в ткань?

    Отправить значение переменной, которая находится в цикле от одного сценария к другому скрипту

    Вырезание одного изображения на несколько изображений с использованием библиотеки изображений Python

    Django Simple History – save_without_historical_record () не работает для меня

    Как я могу получить доступ к BPY в стандартной консоли python? BPY – это Blender-python -thing

    Вставить (создать) интерактивную оболочку python внутри программы python

    Расписание скрипт Python с планировщиком задач Windows

    Python - лучший язык программирования в мире.