Перевод минут в секунды python

Python Convert Seconds To hh:mm:ss (Hours, Minutes, and Seconds)

There are cases where the application gets time information in seconds, but we need to store that information in hours, minutes, seconds ( hh:mm:ss ) format, or vice-versa.

By the end of this article, you’ll learn:

  • How to convert seconds into hours, minutes, seconds ( hh:mm:ss ) format
  • How to convert hours, minutes, seconds ( hh:mm:ss ) to seconds.

How to Convert Seconds To Hours, Minutes, and Seconds using Timedelta

The below steps show how to convert seconds to hh:mm:ss format in Python using the timedelta class.

  1. Import the datetime module Python’s datetime module provides functions that handle many complex functionalities involving the date and time. Import it using a import datetime statement.
  2. Use the timedelta class of a datetime module The A timedelta represents a duration in days, hours, minutes, and seconds. Use the timedelta() constructor and pass the seconds value to it using the seconds argument.

The timedelta constructor creates the timedelta object, representing time in days, hours, minutes, and seconds ( days, hh:mm:ss.ms ) format.

Example 1: Convert seconds to hh:mm:ss

from datetime import timedelta sec = 6010 print('Time in Seconds:', sec) td = timedelta(seconds=sec) print('Time in hh:mm:ss:', td) # Use the below code if you want it in a string print(str(timedelta(seconds=sec)))
Time in Seconds: 6010 Time in hh:mm:ss: 1:40:10

Example 2: Display it in Human readable format

  • First, Create the timedelta object by passing seconds to it
  • Next, convert the timedelta object to a string
  • Next, split the string into individual components to get hours, minutes, and seconds
from datetime import timedelta def get_time_hh_mm_ss(sec): # create timedelta and convert it into string td_str = str(timedelta(seconds=sec)) print('Time in seconds:', sec) # split string into individual component x = td_str.split(':') print('Time in hh:mm:ss:', x[0], 'Hours', x[1], 'Minutes', x[2], 'Seconds') get_time_hh_mm_ss(29500) get_time_hh_mm_ss(7500040)
Time in seconds: 29500 Time in hh:mm:ss: 8 Hours 11 Minutes 40 Seconds Time in seconds: 7500040 Time in hh:mm:ss: 86 days, 19 Hours 20 Minutes 40 Seconds

Use Python built-in function divmod() function if you don’t want to include days:

The divmod() function Take two numbers as arguments and return a pair of numbers consisting of their quotient and remainder.

seconds = 7500040 print('Time in Seconds:', seconds) # get min and seconds first mm, ss = divmod(seconds, 60) # Get hours hh, mm= divmod(mm, 60) print('Time in Seconds:', hh, 'Hours', mm, 'Minutes', ss, 'Seconds')
Time in Seconds: 7500040 Time in Seconds: 2083 Hours 20 Minutes 40 Seconds

Convert hh:mm:ss to Seconds

Now, let’s assume we have to inverse the above example, i.e., we want to convert hours, minutes, and seconds time string to seconds in Python.

Let’s assume you have a string in the format H:MM:SS , and you need the represent it in seconds.

For example:

  • “1:40:10” would produce an output of 6010 seconds
  • “0:05:15” would produce an output of 315 seconds
  • “0:00:32” would produce an output of 32 seconds

Steps to convert hours, minutes, seconds to seconds:

  • Split the string into individual components and store it in the hours, minutes, and seconds variable.
  • Multiply hours by 3600
  • Multiple minutes by 60
  • Add all the numbers to the seconds variable.
def get_seconds(time_str): print('Time in hh:mm:ss:', time_str) # split in hh, mm, ss hh, mm, ss = time_str.split(':') return int(hh) * 3600 + int(mm) * 60 + int(ss) print('Time in Seconds:', get_seconds('1:40:10')) print('Time in Seconds:', get_seconds('0:05:15')) print('Time in Seconds:', get_seconds('0:00:32'))
Time in hh:mm:ss: 1:40:10 Time in Seconds: 6010 Time in hh:mm:ss: 0:05:15 Time in Seconds: 315 Time in hh:mm:ss: 0:00:32 Time in Seconds: 32

Convert Current Time in Seconds to Days, hh:mm:ss

from datetime import datetime, timedelta # current time in seconds sec = datetime.now().timestamp() print('Time in seconds:', sec) # convert to Days, hh:mm:ss td = timedelta(seconds=sec) print('Time in Days, hh:mm:ss.ms:', td) 
Time in seconds: 1626698950.164824 Time in Days, hh:mm:ss.ms: 18827 days, 12:49:10.164824

Did you find this page helpful? Let others know about it. Sharing helps me continue to create free Python resources.

About Vishal

I’m Vishal Hule, Founder of PYnative.com. I am a Python developer, and I love to write articles to help students, developers, and learners. Follow me on Twitter

Python Exercises and Quizzes

Free coding exercises and quizzes cover Python basics, data structure, data analytics, and more.

  • 15+ Topic-specific Exercises and Quizzes
  • Each Exercise contains 10 questions
  • Each Quiz contains 12-15 MCQ

Источник

Преобразование времени в часы, минуты и секунды в Python

В этом уроке мы будем говорить о времени. Рассмотрим различные способы преобразования времени в секундах во время в часах, минутах и секундах.

Двигаясь вперед, мы будем называть время в часах, минутах и секундах предпочтительным форматом.

Давайте потратим немного «времени» и подумаем о проблеме. Несомненно, у python есть удивительные модули, которые могут сделать преобразование за нас. Но давайте сначала попробуем написать нашу собственную программу, прежде чем мы перейдем к встроенным модулям.

Создание пользовательской функции

Чтобы написать нашу собственную функцию преобразования, нам сначала нужно подумать о проблеме математически.

Как перевести секунды в предпочтительный формат? Вам нужно получить значение часов, минут и секунд.

Предположим, что время в секундах не превышает общего количества секунд в сутках. Если это так, мы разделим его на общее количество секунд в день и возьмем остаток.

Математически это представлено как:

seconds = seconds % (24 * 3600)

24 * 3600, поскольку в одном часе 3600 секунд (60 * 60), а в одном дне 24 часа.

После этого мы можем продолжить и вычислить значение часа из секунд.

1. Как получить значение часа?

Чтобы получить значение часа из секунд, мы будем использовать оператор деления (//). Он возвращает целую часть частного.

Поскольку нам нужно количество часов, мы разделим общее количество секунд (n) на общее количество секунд в часе (3600).

Математически это представлено как:

После этого нам нужно посчитать минуты.

2. Как получить значение минуты?

Чтобы вычислить значение минут, нам нужно сначала разделить общее количество секунд на 3600 и взять остаток.

Математически это представлено как:

Теперь, чтобы вычислить значение минут из приведенного выше результата, мы снова будем использовать оператор floor.

В минуте шестьдесят секунд, поэтому мы уменьшаем значение секунд до 60.

После вычисления значения минут мы можем перейти к вычислению значения секунд для нашего предпочтительного формата.

3. Как получить значение секунд?

Чтобы получить значение секунд, нам снова нужно разделить общее количество секунд на количество секунд в одной минуте (60) и взять остаток.

Математически это делается следующим образом:

Это даст второе значение, которое нам нужно для нашего предпочтительного формата.

4. Полный код

Давайте скомпилируем вышеупомянутые знания в функции Python.

def convert_to_preferred_format(sec): sec = sec % (24 * 3600) hour = sec // 3600 sec %= 3600 min = sec // 60 sec %= 60 print("seconds value in hours:",hour) print("seconds value in minutes:",min) return "%02d:%02d:%02d" % (hour, min, sec) n = 10000 print("Time in preferred format :-",convert(n))
seconds value in hours: 2 seconds value in minutes: 46 Time in preferred format :- 02:46:40

Использование модуля времени

Теперь давайте посмотрим на встроенный модуль, который позволяет нам конвертировать секунды в наш предпочтительный формат в одной строке кода.

Модуль времени определяет эпоху как 1 января 1970 года, 00:00:00 (UTC) в системах Unix (зависит от системы). Эпоха – это, по сути, начало времени для компьютера. Думайте об этом как о floor 0. Всякий раз, когда мы конвертируем секунды с помощью модуля времени, эта эпоха используется как точка отсчета.

Чтобы вывести эпоху в вашей системе, используйте следующую строку кода:

Time Epoch

Чтобы преобразовать секунды в предпочтительный формат, используйте следующую строку кода:

time.strftime("%H:%M:%S", time.gmtime(n))

Эта строка принимает время в секундах как «n», а затем позволяет отдельно выводить часы, минуты и секунды.

Полный код Python выглядит следующим образом:

import time n=10000 time_format = time.strftime("%H:%M:%S", time.gmtime(n)) print("Time in preferred format :-",time_format)
Time in preferred format :- 02:46:40

Модуль времени также дает вам возможность отображать дополнительную информацию, такую как день, месяц и год.

% а Отображать сокращенное название дня недели.
% А Отображать полное название дня недели.
% b Отображать сокращенное название месяца.
% B Отображать полное название месяца.
% c Отобразить соответствующее представление даты и времени.
% d Отображать день месяца как десятичное число [01,31].

Попробуем использовать% a и % b.

import time n=100000000000 time_format = time.strftime("Day: %a, Time: %H:%M:%S, Month: %b", time.gmtime(n)) print("Time in preferred format :-",time_format)
Time in preferred format :- Day: Wed, Time: 09:46:40, Month: Nov

Использование модуля Datetime

Вы также можете использовать метод timedelta в модуле DateTime для преобразования секунд в предпочтительный формат.

Он отображает время в днях, часах, минутах и секундах, прошедших с эпохи.

Код Python для преобразования секунд в предпочтительный формат с использованием модуля Datetime выглядит следующим образом:

import datetime n= 10000000 time_format = str(datetime.timedelta(seconds = n)) print("Time in preferred format :-",time_format)
Time in preferred format :- 115 days, 17:46:40

Заключение

В этом руководстве были рассмотрены три различных способа преобразования секунд в часы, минуты и секунды. В целом есть два разных способа решения проблемы.

Вы либо пишете свою собственную функцию, либо используете встроенный модуль. Мы начали с написания нашей собственной функции, а затем посмотрели на модуль времени и DateTime.

Источник

Как из минуты, часов, дней в секунды?

Здравствуйте. Суть идеи такова:
Пользователь вводит строку, где указаны числа и буква, которая обозначает тип времени.
Пример строки: «10m» — 10 минут или «5h» — 5 часов.

Далее эту строку нужно перевести в секунды.
Пример итога: «600» — 10 минут в секундах или «18000» — 5 часов в секундах.

Помогите, пожалуйста. Кто нибудь делал подобное?

Перевести время: из дней в часы, из часов в минуты, из минут в секунды
Напишите программу, которая переводит время:из дней в часы, из часов в минуты, из минут в секунды.

Округлить время (часы, минуты, секунды) до часов, минут или до часов
Всем привет! Нужна помощь с исправлением программы на c#. По заданию нужно округлить время (часы.

Перевод часов в минуты и секунды
Тут проблемка небольшая. Написал код, вроде должен считать, но показывает всегда одни значения -.

Перевод часов в минуты, секунды, миллисекунды
Написать программу, которая в зависимости от выбранного номера и количества часов N переводила их в.

Преобразование часов в минуты или секунды
Написать программу преобразования часов в минуты или секунды по выбору пользователя.

VordyV, стандартная олимпиадная задачка моего детства. на каждой второй олимпиаде по программированию она была. даже затрудняюсь подсчитать, сколько раз её делал)

Источник

Читайте также:  Php content length как вычислить
Оцените статью