无异常地确定文件是否存在
在处理文件时,在尝试操作之前验证文件是否存在至关重要,以避免例外情况。以下是如何在不依赖 try 语句的情况下完成此任务:
使用 os.path.isfile
在您不打算立即打开文件的情况下,您可以使用 os.path.isfile,特别是当您需要确认该实体是一个文件时。如果提供的路径对应于现有的常规文件,则此函数返回 True。需要注意的是,os.path.isfile 遵循符号链接,这意味着 islink() 和 isfile() 对于同一路径都可以返回 True。
import os.path os.path.isfile(fname)
利用 pathlib
Python 3.4 引入了 pathlib 模块,它提供了面向对象的方法。使用pathlib,您可以使用Path 对象执行存在性检查。以下是一些示例:
检查文件是否存在:
from pathlib import Path my_file = Path("/path/to/file") if my_file.is_file(): # file exists
检查目录是否存在:
if my_file.is_dir(): # directory exists
检查 Path 对象是否存在,无论它是否是文件或目录:
if my_file.exists(): # path exists
使用 strict=True 解析路径
您还可以在尝试阻止以确定是否存在。如果解析成功,则路径存在;
try: my_abs_path = my_file.resolve(strict=True) except FileNotFoundError: # doesn't exist else: # exists
通过采用这些技术,您可以自信地检查文件是否存在,而不会触发不需要的异常,从而确保代码中稳健的文件处理操作。
以上是如何在 Python 中检查文件是否存在而不使用异常?的详细内容。更多信息请关注PHP中文网其他相关文章!