【问题标题】:Python get micro time from certain datePython从某个日期获取微时间
【发布时间】:2012-07-20 23:54:21
【问题描述】:

我已经浏览 Python 指南和一些搜索机几个小时了,但我真的找不到我的问题的答案。

我正在编写一个开关,其中只有某些文件在给定日期之后被修改时被选择在 file_list (list[]) 中。

在我的循环中,我执行以下代码来获取它的微时间:

file_time = os.path.getmtime(path + file_name)

这给我一个很好的微时间,像这样:1342715246.0

现在我想比较那个时间是否在我放弃的某个日期时间之后。因此,出于测试目的,我使用了 1790:01:01 00:00:00。

# Preset (outside the class/object)
start_time = '1970-01-01 00:00:00'
start_time = datetime.datetime.strptime(start_time, '%Y-%m-%d %H:%M:%S')
start_time = start_time.strftime("%Y-%m-%d %H:%M:%S")

# In my Method this check makes sure I only append files to the list
#   that are modified after the given date
if file_time > self.start_time:
    file_list.append(file_name)

当然这不起作用,哈哈:P。我的目标是从自定义日期制作微时间格式。我只能在网上找到从当前日期开始制作微时间格式的 ClassMethods。

【问题讨论】:

    标签: python file datetime time


    【解决方案1】:

    看看Python datetime to microtime。你需要以下sn-p:

    def microtime(dt):
        time.mktime(dt.timetuple()) + dt.microsecond / 1000000.0 
    

    【讨论】:

    • 工作就像一个魅力,谢谢:D。我已经在昨天 21:00 (09:00 PM) 之后创建的文件上对其进行了测试,效果非常好。现在最后一步是我将添加一个缓冲区列表,如果要处理新文件,它将每隔几秒(LIVE)镜像一次。这样,我想尽量减少对 LIVE 循环会话中已经处理的文件的重新处理。再次;非常感谢^^
    【解决方案2】:

    您可以自行比较datetime.datetime 对象。如果将start_time 保留为datetime.datetime 对象并将file_time 设置为datetime.datetime 对象,则可以成功执行file_time > self.start_time

    看看支持的运算符in the documentation

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-21
      • 2011-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多