在Python中将整数转换为字符串MM:SS

2024-05-21 16:31:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道是否有办法将整数的值转换成某种时间戳,就像使用strftime("%H:%M", gmtime())将输出当前的小时和分钟一样。你知道吗

我希望修复的代码片段如下所示:

#The full program includes an input system which makes this snippet run.
import time
initial_time = time.time()
print "It has been " + str(int(time.time()-initial_time)) + " since you said that."

假设程序运行时,整数的值是596,大约是9分56秒。我需要程序做的是输出09:56而不是596。如果有办法的话,请告诉我。你知道吗

另外,如果有办法使用格式化操作符%str(int(time.time()-initial_time))引入字符串,请告诉我。你知道吗


Tags: the代码time时间整数programfullinitial
3条回答

timedelta是我处理这个问题的方式(正如其他人已经建议的那样)。但为了完整起见,我要提到模运算:

In [86]: import time

In [87]: initial_time = time.time()

In [88]: end_time = time.time()

In [89]: print "It has been %d:%d since you said that" %(int(end_time-initial_time)/60, int(end_time-initial_time)%60)
It has been 0:56 since you said that

此外,要解决您的问题:

In [90]: print "It has been", str(int(end_time-initial_time)/60) + ":" + str(int(end_time-initial_time)%60), "since you said that"
It has been 0:56 since you said that
In [1]: import datetime

In [2]: str(datetime.timedelta(seconds=596))
Out[2]: '0:09:56'

您可以使用^{}

>>> import datetime
>>> str(datetime.timedelta(seconds=596))
'0:09:56'

相关问题 更多 >