I am confused to use about these two osmethods to create the new directory.
Please give me some example in Python.
(Can not comment, just add to NPE's answer.)
In Python3, os.makedirs has a default parameter exist_ok=False.
If you set it to True, then os.makedirs will not throw any exception if the leaf exists.
(While os.mkdir doesn't have this parameter.)
Just like this:
os.makedirs('dirA', exist_ok=True)
P.S.
You can type ? before the name of a method in IPython shell to take a quick look at the documentation.
e.g.:
>>> import os
>>> ? os.makedirs
makedirs() creates all the intermediate directories if they don't exist (just like mkdir -p in bash).
mkdir() can create a single sub-directory, and will throw an exception if intermediate directories that don't exist are specified.
Either can be used to create a single 'leaf' directory (dirA):
os.mkdir('dirA')os.makedirs('dirA')But makedirs must be used to create 'branches':
os.makedirs('dirA/dirB') will work [the entire structure is created]mkdir can work here if dirA already exists, but if it doesn't an error will be thrown.
Note that unlike mkdir -p in bash, either will fail if the leaf already exists.