Convert milliseconds to hours, min, and seconds python
49,823
Solution 1
If You want one single function:
millis=input("Enter time in milliseconds ")
millis = int(millis)
seconds=(millis/1000)%60
seconds = int(seconds)
minutes=(millis/(1000*60))%60
minutes = int(minutes)
hours=(millis/(1000*60*60))%24
print ("%d:%d:%d" % (hours, minutes, seconds))
Solution 2
Try this:
def convertMillis(millis):
seconds=(millis/1000)%60
minutes=(millis/(1000*60))%60
hours=(millis/(1000*60*60))%24
return seconds, minutes, hours
def main():
millis=input("Enter time in milliseconds ")
con_sec, con_min, con_hour = convertMillis(int(millis))
print("{0}:{1}:{2}".format(con_hour, con_min, con_sec))
main()
The problems seem to be:
- You lack the understanding of local and global variables. Just because a variable is in your
convertMillis
doesn't meanmain
will get to read it. You have to explicitly return them. - You misunderstood the syntax of
print
,input
andreturn
Author by
Admin
Updated on December 19, 2020Comments
-
Admin over 3 years
I need to convert milliseconds to seconds minute hours. I have code like
def convertMillis(millis): seconds=(milli/1000)%60 minutes=(milli/(1000*60))%60 hours=(milli/(1000*60*60))%24 return def main(): milli=print(input("Enter time in milliseconds ")) print(hours,":",minutes,":",seconds main()
But it's not a very good solution.
I would like to know the most pythonic way to do something like
>>> convertmillis(5500) 0:0:5
-
zondo about 8 yearsWhy not take advantage of
divmod()
? -
primo over 2 yearsnot getting proper hours and getting 0 for minutes and seconds