Home >Backend Development >Python Tutorial >How to create a directory with intermediate directories in Python?

How to create a directory with intermediate directories in Python?

DDD
DDDOriginal
2024-10-29 13:49:29552browse

How to create a directory with intermediate directories in Python?

The "mkdir -p" function in Python [duplicate]

In Python, how to implement something similar to the shell command "mkdir -p" "Function? Hoping for a solution that doesn't rely on system calls and has a code length of less than 20 lines.

Solution

For Python ≥ 3.5, use pathlib.Path.mkdir:

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

The exist_ok parameter was new in Python 3.5.

For Python ≥ 3.2, os.makedirs has an optional third argument exist_ok which, when True, enables the mkdir -p functionality except when mode is provided and the directory's The permissions differ from the expected permissions; in this case, an OSError is raised as before:

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

For earlier versions of Python, you can use os.makedirs and ignore the error:

<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
        # 还可以在此处理其他errno情况,否则:
        else:
            raise</code>

The above is the detailed content of How to create a directory with intermediate directories in Python?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn