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

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

Barbara Streisand
发布: 2024-12-15 12:29:19
原创
456 人浏览过

How Can I Create Directories and Their Parent Directories in Python?

使用 Python 创建目录及其父目录

在文件系统领域,通常需要在指定路径创建目录以及一路上任何丢失的父目录。这模仿了 Bash 的 mkdir -p 命令的功能。

现代 Python (≥ 3.5):

Python 的 pathlib 模块提供了一种便捷的方法来处理此问题:

from pathlib import Path
Path("/my/directory").mkdir(parents=True, exist_ok=True)
登录后复制

老Python版本:

使用 os 模块:

import os
if not os.path.exists(directory):
    os.makedirs(directory)
登录后复制

如评论所述,此方法存在潜在的竞争条件。为了解决这个问题,您可以使用第二个 os.path.exists 调用或捕获 OSError 并检查嵌入的错误代码:

import os, errno

try:
    os.makedirs(directory)
except OSError as e:
    if e.errno != errno.EEXIST:
        raise
登录后复制

但是,这会带来丢失其他错误的风险。

改进的 Python 版本:

Python 3.3 引入了 FileExistsError,它简化错误处理:

try:
    os.makedirs("path/to/directory")
except FileExistsError:
    # directory already exists
    pass
登录后复制

Python 3.2 还在 os.makedirs 中添加了 exit_ok 参数:

os.makedirs("path/to/directory", exist_ok=True)  # succeeds even if directory exists.
登录后复制

以上是如何在Python中创建目录及其父目录?的详细内容。更多信息请关注PHP中文网其他相关文章!

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