
with 语句处理不存在的文件:优雅地创建文件在 Python 中,使用 with 语句处理文件既简洁又安全。但如果目标文件不存在,直接使用 with open(...) 会抛出 FileNotFoundError 异常。本文演示如何使用 with 语句,在文件不存在时创建它,并处理可能不存在的父目录。
Python 提供了 pathlib 模块,方便地操作文件路径。以下代码展示了如何安全地创建文件,即使其父目录也不存在:
from pathlib import Path
# 目标文件路径
target_file = Path("./foo/bar/test.txt")
# 创建文件及其父目录
target_file.parent.mkdir(parents=True, exist_ok=True) # 创建父目录,忽略已存在目录的错误
# 使用 with 语句打开并写入文件
with target_file.open("w") as f:
f.write("文件内容...")
# 或者,更简洁的写法 (Python 3.11+)
target_file.write_text("文件内容...")
这段代码首先使用 pathlib.Path 创建目标文件路径对象。mkdir(parents=True, exist_ok=True) 创建目标文件的父目录,parents=True 确保创建所有缺失的父目录,exist_ok=True 避免因目录已存在而抛出异常。 最后,with target_file.open("w") 安全地打开文件用于写入,或者更简洁地使用 write_text() 方法直接写入文本内容。 这样就避免了 FileNotFoundError,并确保文件及其所有父目录都已创建。
一套面向小企业用户的企业网站程序!功能简单,操作简单。实现了小企业网站的很多实用的功能,如文章新闻模块、图片展示、产品列表以及小型的下载功能,还同时增加了邮件订阅等相应模块。公告,友情链接等这些通用功能本程序也同样都集成了!同时本程序引入了模块功能,只要在系统默认模板上创建模块,可以在任何一个语言环境(或任意风格)的适当位置进行使用!
0
这个方法比原代码更简洁,并且利用了 exist_ok=True 参数避免了不必要的异常处理,提高了代码的可读性和健壮性。 write_text() 方法在 Python 3.11 及以上版本中可用,提供了一种更直接的写入文本文件的方式。
立即学习“Python免费学习笔记(深入)”;
以上就是如何在使用 Python 的 with 语句时创建不存在的文件?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号