Python:从文件路径提取时间
我想找到一种通用方法,从不同的文件路径中提取格式为%H-%M-%S的时间,如下所示:Python:从文件路径提取时间,python,file,datetime,Python,File,Datetime,我想找到一种通用方法,从不同的文件路径中提取格式为%H-%M-%S的时间,如下所示: u'C:/Users/pivo/work/Data/Pink_Exp_2015_12031329\\2015-12-03_15-58-29_TrData.txt' u'C:/Users/pivo/work/Data/Black_try\\2015-12-03_14-41-00_TrData.txt' 我可以使用split并指向时间,因为这两种情况如下,但我正在寻找一个通用的解决方案 date_str =
u'C:/Users/pivo/work/Data/Pink_Exp_2015_12031329\\2015-12-03_15-58-29_TrData.txt'
u'C:/Users/pivo/work/Data/Black_try\\2015-12-03_14-41-00_TrData.txt'
我可以使用split并指向时间,因为这两种情况如下,但我正在寻找一个通用的解决方案
date_str = path1.split('_')[2]
date_str = path2.split('_')[4]
最好的方法是什么?多谢各位
import re
reg = r'\d+\-\d+\-\d+'
data='C:/Users/pivo/work/Data/Black_try\\2015-12-03_14-41-00_TrData.txt'
a=re.findall(reg, data)
print(a[1])
您需要尝试使用一些正则表达式模式来找到您绝对想要的
以下是python正则表达式教程:
如果您需要处理日期,以下方法也可能有用:
from datetime import datetime
import os
filepaths = [ur'C:/Users/pivo/work/Data/Pink_Exp_2015_12031329\2015-12-03_15-58-29_TrData.txt',
ur'C:/Users/pivo/work/Data/Black_try\2015-12-03_14-41-00_TrData.txt', 'not suitable.txt']
for full_path in filepaths:
path, name = os.path.split(full_path)
try:
print datetime.strptime(name[:19], '%Y-%m-%d_%H-%M-%S')
except ValueError, e:
pass
这将显示以下输出日期:
2015-12-03 15:58:29
2015-12-03 14:41:00
你尝过吗approach@saikumarm看看那本似乎有用的书,谢谢。我会看看正则表达式库教程。