これら2つのos
methodsを使用して新しいディレクトリを作成するのは混乱しています。
Pythonの例をいくつか教えてください。
makedirs()
すべての中間ディレクトリを作成 存在しない場合(bashの_mkdir -p
_と同様)。
mkdir()
は単一のサブディレクトリを作成でき、存在しない中間ディレクトリが指定されている場合は例外をスローします。
どちらかを使用して、単一の「リーフ」ディレクトリ(dirA)を作成できます。
os.mkdir('dirA')
os.makedirs('dirA')
ただし、「ブランチ」を作成するにはmakedirsを使用する必要があります。
os.makedirs('dirA/dirB')
は機能します[構造全体が作成されます]mkdir
はここで機能しますifdirA
はすでに存在しますが、そうでない場合はエラーがスローされます。
Bashの_mkdir -p
_とは異なり、リーフが既に存在する場合はどちらも失敗します。
(コメントすることはできません。NPEの回答に追加するだけです。)
Python3では、_os.makedirs
_にはデフォルトパラメータ_exist_ok=False
_があります。
_True
に設定すると、_os.makedirs
_はnotリーフが存在する場合に例外をスローします。
(_os.mkdir
_にはこのパラメーターはありません。)
ちょうどこのような:
os.makedirs('dirA', exist_ok=True)
追伸.
IPython Shellのメソッド名の前に_?
_と入力すると、ドキュメントを簡単に確認できます。
例えば。:
_>>> import os
>>> ? os.makedirs
_