Python os.walk 忽略某個目錄下的子目錄

import os
for root, dir, file in os.walk('./'):
    if os.path.basename(root) == "忽略父文件夾":
        dir[:] = [] # 忽略當(dāng)前目錄下的子目錄

# 為什么用dir[:] = [],而不用dir = [] ? dir = []并沒有改變原來的列表,而dir[:] = []則是原地修改列表

或者

for root, dirs, files in os.walk(path,topdown=True):
    dirs[:] = [d for d in dirs if d not in "忽略父文件夾"]
    print(os.path.basename(root))

#現(xiàn)場修改dirs將刪除os.walk訪問的(隨后的)文件和目錄:

mark

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容