簡體   English   中英

使用glob在三個子文件夾中遞歸查找所有zip個文件

[英]Using glob to find all zip files recursively in three sub folder

我試圖只查看三個特定的子文件夾,然后遞歸地創建文件夾內所有 zip 文件的列表。 我可以只用 1 個文件夾輕松地做到這一點,並遞歸地查看輸入路徑中的所有子文件夾,但是還有其他創建的文件夾我們無法使用,而且我們不知道文件夾名稱是什么。 所以這就是我所在的位置,我不確定如何將三個子文件夾正確傳遞給 glob。

# using  glob, create a list of all the zip files in specified sub directories COMM, NMR, and NMH inside of input_path
    zip_file = glob.glob(os.path.join(inputpath, "/comm/*.zip,/nmr/*.zip,/nmh/*.zip"), recursive=True)
    #print(zip_file)
    print(f"Found {len(zip_file)} zip files")

帶逗號的字符串是...只是一個字符串。 如果你想執行三個 globs,你需要類似的東西

zip_file = []
for dir in {"comm", "nmr", "nmh"}:
    zip_file.extend(glob.glob(os.path.join(inputpath, dir, "*.zip"), recursive=True)

正如@Barmar 在評論中指出的那樣,如果您想在這些文件夾中的任何位置查找 zip 文件,則模式需要為...(os.path.join(inputpath, dir, "**/*.zip") 。如果沒有,也許編輯您的問題以提供您要遍歷的結構的示例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM