existe alguma função para converter segundos e minutos em horas?
Podem me ajudar! Desde já agradeço
pedro igor escreveu:
> existe alguma função para converter segundos e minutos em horas?
> Podem me ajudar! Desde já agradeço
>
Olá,
Depende dos argumentos que vai passar para a função, isto é,
pode-se fazer algo assim:
def horas(dias = 0, horas = 0, minutos = 0, segundos = 0, microssegundos
= 0, intervalo = None, tempo = None):
total_horas = dias * 24 + horas + minutos / 60. + segundos / 3600. +
microssegundos / 3600000000.
if intervalo:
total_horas += intervalo.days * 24 + intervalo.seconds / 3600.0 +
intervalo.microseconds / 3600000000.
if tempo:
total_horas += tempo.hour + tempo.minute / 60. + tempo.second /
3600. + tempo.microsecond / 3600000000.
return total_horas
Intervalo (datetime.timedelta) pode ser o objeto mesmo ou a
diferença entre duas data_e_hora (datetime.datetime), e tempo
(datetime.time) é objeto. Resulta na soma de tudo.
Exemplos:
horas(tempo = datetime.time(1,30,36))
1.51
d1 = datetime.datetime.today()
d2 = datetime.datetime.today()
horas(intervalo = d2 - d1)
0.0009177811111111112
horas(1,2,30,36,7200)
26.510002
horas(1,2,30,36,7200, tempo = datetime.time(1,30,36))
28.020002000000002
PS: repare no erro de arredondamento, procure tralhar com no máximo 15
dígitos significativos.
[]'s
Junior Polegato
--- Em python-brasil@yahoogrupos.com.br, Junior Polegato - Linux <linux@...> escreveu
junior me desculpe mas não entendi muito bem o código. Os objetos days,seconds,hour,minute pertencem ao módulo datetime?
ou seja pra mim rodar a função preciso importar o módulo?
por favor esclareça, desde já agradeço!
Você também pode dar uma olhada no "Basic date time formats"[1] e também no
"Time access and conversions"[2] da documentação oficial do python. Aqui
também no site da pleac [3] há bons exemplos de datetime conversions.
Creio que o segundo link irá lhe dar uma boa ideia de como funciona esse
tipo de conversão e o terceiro irá exemplificar melhor.
[1]- http://docs.python.org/library/datetime.html
[2]- http://docs.python.org/library/time.html
[3]- http://pleac.sourceforge.net/pleac_python/datesandtimes.html
Demetrius Albuquerque
Linux & SO www.maltzsama.blogspot.com
Estação do Rock http://www.estacaodorock.com
Em 5 de abril de 2010 14:03, Junior Polegato - Linux <
linux@juniorpolegato.com.br> escreveu:
[As partes desta mensagem que não continham texto foram removidas]
pedro igor escreveu:
> --- Em python-brasil@yahoogrupos.com.br, Junior Polegato - Linux <linux@...> escreveu
>
>> pedro igor escreveu:
>>
>>> existe alguma função para converter segundos e minutos em horas?
>>> Podem me ajudar! Desde já agradeço
>>>
> junior me desculpe mas não entendi muito bem o código. Os objetos days,seconds,hour,minute pertencem ao módulo datetime?
> ou seja pra mim rodar a função preciso importar o módulo?
> por favor esclareça, desde já agradeço!
>
Olá,
Se usar o módulo datetime pode usufruir dos parâmetros intervalo
e tempo, caso contrário, a função funciona plenamente sem esses
parâmetros, basta não usá-los, teste e veja. Caso não queira nem que
eles apareçam, basta excluí-los da declaração função e também os "ifs"
que os compreendem, ficando a função toda apenas 2 linhas:
def horas(dias = 0, horas = 0, minutos = 0, segundos = 0, microssegundos = 0):
return dias * 24 + horas + minutos / 60. + segundos / 3600. + microssegundos / 3600000000.
[]'s
Junior Polegato
--- Em python-brasil@yahoogrupos.com.br, Junior Polegato - Linux <linux@...> escreveu
>
> pedro igor escreveu:
> > --- Em python-brasil@yahoogrupos.com.br, Junior Polegato - Linux <linux@> escreveu
>Obrigado júnior agora compreendi! Valeu!!
Creio que seja ainda mais facil vc fazer isso daqui:
import time
import datetime
tuplatime = time.localtime(SEGUNDOS)
print tuplatime
Os modulos time e datetime já vem na instalação padrão do python.
Demetrius Albuquerque
Linux & SO www.maltzsama.blogspot.com
Estação do Rock http://www.estacaodorock.com
Em 6 de abril de 2010 07:29, Junior Polegato - Linux <
linux@juniorpolegato.com.br> escreveu:
>
>
> pedro igor escreveu:
>
> > --- Em python-brasil@yahoogrupos.com.br<python-brasil%40yahoogrupos.com.br>,
[As partes desta mensagem que não continham texto foram removidas]