忽略Python listdir中的“系统卷信息”

时间:2019-10-22 07:29:40

标签: python windows listdir

我目前正在尝试获取Windows卷上的所有文件,以便复制某些文件。从一个文件夹复制到另一个文件夹可以很好地工作,但是当尝试列出目录然后遍历找到的卷文件时,我只是被“系统卷信息”的访问被拒绝的例外所打招呼。

如何在循环中忽略/跳过此操作?

我正在使用递归函数,第一次使用卷本身的根路径调用它。

def list_all(path):
files = os.listdir(path)

for file in files:
    low_path = os.path.join(path, file)

    if os.path.isdir(low_path):
        list_all(low_path)
    else:
        # shutil.copy()

1 个答案:

答案 0 :(得分:0)

您可以添加一个try/except

def list_all(path):
files = os.listdir(path)

try:
  files.remove("System Volume Information")
except:
  print("System Volume Information not present in this directory")


for file in files:
    low_path = os.path.join(path, file)

    if os.path.isdir(low_path):
        list_all(low_path)
    else:
        # shutil.copy()