What is the most elegant way to check if the directory a file is going to be written to exists, and if not, create the directory using Python? Here is what I tried:
Starting from Python 3.5, pathlib.Path.mkdir has an exist_ok
flag:
from pathlib import Path
path = Path('/my/directory/filename.txt')
path.parent.mkdir(parents=True, exist_ok=True)
# path.parent ~ os.path.dirname(path)
This recursively creates the directory and does not raise an exception if the directory already exists.
(just as os.makedirs got an exist_ok
flag starting from python 3.2 e.g os.makedirs(path, exist_ok=True)
)
Note: when i posted this answer none of the other answers mentioned exist_ok
...