使用 Python 创建目录并缺少父目录
问:如何在指定路径创建目录,同时又创建目录沿该路径创建任何缺失的父目录吗?
要在 Python 中实现此功能 ≥ 3.5,利用pathlib.Path.mkdir:
from pathlib import Path Path("/my/directory").mkdir(parents=True, exist_ok=True)
对于早期的Python版本,请考虑以下方法:
方法1:利用os.path.exists和os.makedirs
import os if not os.path.exists(directory): os.makedirs(directory)
虽然这种方法很简单,但它提出了潜在的竞争条件。
方法 2: 处理潜在的竞争条件
import os, errno try: os.makedirs(directory) except OSError as e: if e.errno != errno.EEXIST: raise
此选项通过捕获和检查错误代码来解决竞争条件。
现代 Python 改进:
Python 版本3.3 和 3.2 引入了改进:
try: os.makedirs("path/to/directory") except FileExistsError: # directory already exists pass
os.makedirs("path/to/directory", exist_ok=True) # succeeds even if directory exists.
以上是如何在 Python 中创建目录及其缺失的父目录?的详细内容。更多信息请关注PHP中文网其他相关文章!