Python搜索字符串时间戳以返回数据值

2024-05-23 17:24:58 发布

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

我对编程相当陌生,手头有个难题。使用Python代码,我试图搜索一个文本文件,该文本文件的时间戳是一个字符串和另一个数据值。我试图将搜索限制为+或-3分钟,以便搜索的时间戳将使用文本文件中最接近的时间戳并返回与时间戳相关的数据值。
以下是正在搜索的文本文件的示例:

2014/05/01 00:00 -0.075                           
2014/05/01 00:06 -0.056                                             
2014/05/01 00:12 -0.037           
2014/05/01 00:18 -0.017         
2014/05/01 00:24 0.002        
2014/05/01 00:30 0.021    
2014/05/01 00:36 0.040           
2014/05/01 00:42 0.061       
2014/05/01 00:48 0.081        
2014/05/01 00:54 0.102        
2014/05/01 01:00 0.124         
2014/05/01 01:06 0.146          
2014/05/01 01:12 0.168   

到目前为止,我编写的代码是:

^{pr2}$

但是,当用户搜索输入的时间戳位时,它才起作用。我不知道如何处理+3分钟或-3分钟的限制搜索。提前谢谢你!在


Tags: 数据字符串代码用户示例编程时间文本文件
1条回答
网友
1楼 · 发布于 2024-05-23 17:24:58

您可以尝试这样的方法,假设您的TimeVariable也是相同的格式,这似乎是一个合理的假设:

TimeFields = TimeVariable.split(':')
TimeInMinutes = int(TimeFields[0]) * 60 + int(TimeFields[1])

with open(TEXTFILE,'r') as searchfile:
         for line in searchfile:
                x = line.split(' ',2)
                if DateVariable == x[0]:
                        TestFields = x[1].split(':')
                        EntryTime = int(TestFields[0]) * 60 + int(TestFields[1])

                        TimeDelta = EntryTime - TimeInMinutes

                        if -3 <= TimeDelta <= 3:
                                print x[2]
                                break
                else:
                        print 'No timestamp match was found.'

你需要在午夜前后的6分钟内(或中午左右,如果是12小时的话)增加一点额外的逻辑,但这应该不会太难加入。。。在

相关问题 更多 >