Python查找最新的纪元时间和格式为字符串

时间:2015-12-01 20:21:54

标签: python time

我使用Python在我的数据库中运行查询,我想返回列的最新纪元时间

import time
recent_time = 0
for row in rows:
    time = row[0]
    if time > recent_time:
        recent_time = int(time)
print "Latest Time: %s" % time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(recent_time))

但我不断获得AttributeError: 'long' object has no attribute 'strftime'

2 个答案:

答案 0 :(得分:2)

您正在依次将每个引用模块time的变量替换为row[0]的内容。只需将变量重命名为其他内容,这样就不会发生命名空间冲突:

import time
recent_time = 0
for row in rows:
    time_entry = row[0]
    if time_entry > recent_time:
        recent_time = int(time_entry)
print "Latest Time: %s" % time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(recent_time))

答案 1 :(得分:1)

您可以简化代码:

import time

latest_time = max(int(row[0]) for row in rows) # find the latest epoch time
print(time.ctime(latest_time))                 # format as string (local time)

如果相关;添加空结果的处理(在这种情况下,您当前的代码返回Epoch)。