2017-10-18 70 views
1

如果我有一个突出特征是这样的文件名:如何提取文件名的一部分并将其分配给变量?

FILE_PATH/identifier1_identifier2_identifier3_identifier4_identifier5_identifier6_done_combined.txt

凡做&组合特性在每个文件命名,但通过标记位是identifier6唯一的每个文件。

如何将每个标识符分配给变量?我试图使用一系列文件中的标识符来检查列表,以便我可以在每个文件内附加一个特定的值。

我有这种想法(我是新来的Python编码和这个网站,抱歉,如果我的代码没有被格式化正确):所以它的工作原理

import glob, re 
source_files = glob.glob('(.*)_done_combined.txt') 
for file in source_files: 
    match = re.search("(.*)_(.*)_(.*)_(.*)_(.*)_(.*)_done_combined.txt", file) 
    tag1 = match.group(1) 
    tag2 = match.group(2) 

Python是没有返回错误代码(有点),但我知道我写错了这些步骤,我也错过了一些步骤。

任何建议&帮助将不胜感激!

+1

为什么不能用'分裂( '_')'? – roganjosh

+0

你可以使用'.split('_')' –

回答

0

尝试使用分裂()函数:

myFileString = "file_path/identifier1_identifier2_identifier3_identifier4_identifier5_identifier6_done_combined.txt" 
myList = myFileString.split('/') 
myVarsList = myList[1].split('_') 
var1 = myVarsList[0] 
var2 = myVarsList[1] 
...etc 
相关问题