Python 在尝试打开 os.listdir 列出的文件时引发 FileNotFoundError
在 Python 中,尝试使用 os 迭代目录中的文件尽管文件存在,.listdir 仍可能引发 FileNotFoundError。
这是因为 os.listdir 仅返回文件名,而不返回目录路径。因此,当 open 尝试仅使用文件名访问文件时,会失败,因为在当前目录中找不到该文件。
要解决此问题,请使用 os.path.join 前置目录os.listdir 返回的每个文件名的路径:
path = r'E:/somedir' for filename in os.listdir(path): with open(os.path.join(path, filename)) as f: # process the file # Ensure file closure
此外,谨慎使用 with 块来自动处理文件关闭。
以上是为什么 Python 在打开 `os.listdir` 列出的文件时会引发 FileNotFoundError?的详细内容。更多信息请关注PHP中文网其他相关文章!