首页 >后端开发 >Python教程 >如何在 Python 中检查文件是否存在而不使用异常?

如何在 Python 中检查文件是否存在而不使用异常?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-12-21 03:18:13342浏览

How Can I Check for File Existence in Python Without Using Exceptions?

如何无异常地验证文件存在

问题:

如何确定文件是否存在而不求助于例外

答案:

try-except 方法:

使用 try- except 块检查文件时存在看似直观,但它引入了安全风险。假设您打算在检查后打开该文件。在这种情况下,文件有可能在检查和打开操作之间被删除或修改。

os.path.isfile:

对于立即文件的情况不需要打开,您可以利用 os.path.isfile。此函数评估指定路径是否指向现有文件,包括通过符号链接访问的文件。

import os.path
os.path.isfile(fname)

pathlib 方法 (Python 3.4 ):

Python 3.4引入了用于面向对象的文件系统交互方法的pathlib。

检查文件存在:

from pathlib import Path

my_file = Path("/path/to/file")
if my_file.is_file():
    # file exists

对于目录:

if my_file.is_dir():
    # directory exists

要验证路径是否存在(无论文件类型如何):

if my_file.exists():
    # path exists

此外,您可以使用resolve (strict=True) 在 try 块中进行更精确的检查:

try:
    my_abs_path = my_file.resolve(strict=True)
except FileNotFoundError:
    # doesn't exist
else:
    # exists

以上是如何在 Python 中检查文件是否存在而不使用异常?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn