Python mkdir -p 等效
要在 Python 中模拟 shell 的 mkdir -p 功能,有多种方法可用。
Python 3.5 及更高版本
Python 3.5 引入了pathlib.Path.mkdir 函数,其中包含parents 和exist_ok 参数。通过将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及更高版本
对于 Python 3.2 及更高版本,os.makedirs 函数有一个可选的第三个参数,exist_ok,可以将其设置为 True 以实现相同的行为:
<code class="python">import os os.makedirs("/tmp/path/to/desired/directory", exist_ok=True)</code>
早期 Python 版本
对于旧版本的 Python,您可以使用 os.makedirs 函数并在目录已存在时捕获 OSError 异常,使用以下代码:
<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 # possibly handle other errno cases here, otherwise finally: else: raise</code>
以上是如何在 Python 中模拟 `mkdir -p` 功能?的详细内容。更多信息请关注PHP中文网其他相关文章!