我有以下的目錄,在父目錄有幾個文件夾,可以說ABCD和每個文件夾內的名稱很多拉鍊的顯示,幷包含在名稱父文件夾的信一起其他信息:的Python:解壓在目錄樹中選擇文件
-parent--A-xxxAxxxx_timestamp.zip
-xxxAxxxx_timestamp.zip
-xxxAxxxx_timestamp.zip
--B-xxxBxxxx_timestamp.zip
-xxxBxxxx_timestamp.zip
-xxxBxxxx_timestamp.zip
--C-xxxCxxxx_timestamp.zip
-xxxCxxxx_timestamp.zip
-xxxCxxxx_timestamp.zip
--D-xxxDxxxx_timestamp.zip
-xxxDxxxx_timestamp.zip
-xxxDxxxx_timestamp.zip
我需要解壓唯一入選的拉鍊在這棵樹,並放置在具有相同名稱相同的目錄,而.zip擴展。
輸出:
-parent--A-xxxAxxxx_timestamp
-xxxAxxxx_timestamp
-xxxAxxxx_timestamp
--B-xxxBxxxx_timestamp
-xxxBxxxx_timestamp
-xxxBxxxx_timestamp
--C-xxxCxxxx_timestamp
-xxxCxxxx_timestamp
-xxxCxxxx_timestamp
--D-xxxDxxxx_timestamp
-xxxDxxxx_timestamp
-xxxDxxxx_timestamp
我的努力:
for path in glob.glob('./*/xxx*xxxx*'): ##walk the dir tree and find the files of interest
zipfile=os.path.basename(path) #save the zipfile path
zip_ref=zipfile.ZipFile(path, 'r')
zip_ref=extractall(zipfile.replace(r'.zip', '')) #unzip to a folder without the .zip extension
的問題是,我不知道如何拯救A,B,C,d等,包括他們在所在的路徑文件將被解壓縮。因此,解壓縮的文件夾是在父目錄中創建的。有任何想法嗎?
而不是試圖做到這一點在一氣呵成,第一個進去'.',然後讓每個文件夾內的所有文件的清單,並檢查文件夾名稱中是否出現所有文件夾列表它。 –