首页 > 解决方案 > 如何指定路径中不存在的文件?

问题描述

我用它在给定路径中查找文件:

path = "C:\\Users\\derpderp\\"
name = "derp.xlsx"

for root, dirs, files in os.walk(path):
    if name in files:
        print(name)

但是如何做相反的事情呢?这样如果文件不存在:指定该文件。

如果我写:

if name not in files:
    print(name)

它将迭代每个文件夹/文件等不存在的文件名。

标签: pythonpython-3.xos.walk

解决方案


您可以使用 pathlib 的resolve()函数并尝试/排除FileNotFound错误。

import pathlib

path = "C:\\Users\\derpderp\\"
name = "derp.xlsx"

try:
    file = pathlib.Path(path+name)
    file.resolve(strict=True)
except FileNotFoundError as e:
    print(name)

https://docs.python.org/3/library/pathlib.html


推荐阅读