2017-10-18 75 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 
相關問題