如何在 Python 中复制'mkdir -p”功能?

Barbara Streisand
发布: 2024-10-29 12:11:02
原创
568 人浏览过

How can I replicate the

在 Python 中复制 mkdir -p 功能

类 Unix 系统上的 mkdir -p 命令无缝创建目录及其父路径如果它们尚不存在。是否有提供类似功能的原生 Python 解决方案?

解决方案:

幸运的是,不同版本的 Python 提供了针对此任务的解决方案:

对于 Python 3.5 及更高版本:

Python 3.5 引入了 pathlib.Path.mkdir ,其参数为parents=True和exist_ok=True:

<code class="python">import pathlib
pathlib.Path("/tmp/path/to/desired/directory").mkdir(parents=True, exist_ok=True)</code>
登录后复制

对于Python 3.2 及以上版本:

os.makedirs 提供了 exit_ok 参数,当设置为 True 时,将启用 mkdir -p 功能:

<code class="python">import os
os.makedirs("/tmp/path/to/desired/directory", exist_ok=True)</code>
登录后复制

对于旧版 Python版本:

对于 3.2 之前的 Python 版本,您可以使用 os.makedirs 并忽略与现有目录相关的任何错误:

<code class="python">import errno
import os

def mkdir_p(path):
    try:
        os.makedirs(path)
    except OSError as exc:  # Python ≥ 2.5
        if exc.errno == errno.EEXIST and os.path.isdir(path):
            pass
        # Handle other errors here or raise a generic exception.</code>
登录后复制

以上是如何在 Python 中复制'mkdir -p”功能?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!