#!/usr/bin/env python
# -*- coding: utf-8 -*-
class timeHuman():
# __seconds contains the number of seconds added in funcions
# setMilisecons, setSeconds, setMinutes and setHours
__seconds=0
def reset(self):
"""
reset the __seconds var
"""
self.__seconds=0
return self
def setMiliseconds(self,value):
self.__seconds+=int(value/1000)
return self
def setSeconds(self,value):
self.__seconds+=value
return self
def setMinutes(self,value):
self.__seconds+=value*60
return self
def setHours(self,value):
self.__seconds+=value*60*60
return self
def getTimeHuman(self):
days,hours,minutes,seconds=self.__calculate(self.__seconds)
result=""
if days:
result+="%s day%s" % (days, "s" if days>1 else "")
if hours:
if result:
result+=", "
result+="%s hour%s" % (hours, "s" if hours>1 else "")
if minutes:
if result:
result+=", "
result+="%s minute%s" % (minutes, "s" if minutes>1 else "")
if seconds:
if result:
result+=", "
result+="%s second%s" % (seconds, "s" if seconds>1 else "")
return " and ".join(result.rsplit(", ",1))
def __calculate(self,seconds):
"""
Runction that calculate the number or dayus, hours, minutes and seconds
"""
days=0
hours=0
minutes=0
if seconds>=60:
minutes=int(seconds/60)
seconds-=60*minutes
if minutes>=60:
hours=int(minutes/60)
minutes-=60*hours
if hours>=24:
days=int(hours/24)
hours-=24*days
return days,hours,minutes,int(seconds)
if __name__=="__main__":
obj=timeHuman()
obj.reset().setMiliseconds(200)
print(obj.getTimeHuman())
obj.reset().setSeconds(1480)
print(obj.getTimeHuman())
obj.reset().setMinutes(60)
print(obj.getTimeHuman())
obj.reset().setHours(3)
print(obj.getTimeHuman())
obj.reset().setHours(30).setSeconds(1480).setMiliseconds(2000)
print(obj.getTimeHuman())
obj.reset().setSeconds(1441)
print(obj.getTimeHuman())
Comentarios sobre la versión: 1 (0)
No hay comentarios