在 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中文网其他相关文章!