首页 > 后端开发 > Python教程 > 如何在 Python 中创建目录及其缺失的父目录?

如何在 Python 中创建目录及其缺失的父目录?

Linda Hamilton
发布: 2024-12-21 10:17:09
原创
963 人浏览过

How to Create a Directory and its Missing Parent Directories in Python?

使用 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 引入了改进:

  • FileExistsError 已公开,允许更清晰的错误处理。
  • os.makedirs 具有 exit_ok 关键字参数,即使目录已经存在,也可以创建目录。
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中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板