我用 Python 3 编写并测试了下面的代码,它工作正常:
def format_duration(seconds):
dict = {'year': 86400*365, 'day': 86400, 'hour': 3600, 'minute': 60, 'second': 1}
secs = seconds
count = []
for k, v in dict.items():
if secs // v != 0:
count.append((secs // v, k))
secs %= v
list = [str(n) + ' ' + (unit if n == 1 else unit + 's') for n, unit in count]
if len(list) > 1:
result = ', '.join(list[:-1]) + ' and ' + list[-1]
else:
result = list[0]
return result
print(format_duration(62))
在 Python3 中,上述返回:
1 minute and 2 seconds
但是,Python 2.7 中的相同代码返回:
62 seconds
我终其一生都无法弄清楚原因。任何帮助将不胜感激。
HUWWW
相关分类