Python中的「mkdir -p」功能[重複]
在Python中,如何實現類似於shell命令「mkdir -p 」的功能?希望一種不依賴系統呼叫的解決方案,程式碼長度在20行以內。
解
對於Python ≥ 3.5,使用pathlib.Path.mkdir:
<code class="python">import pathlib pathlib.Path("/tmp/path/to/desired/directory").mkdir(parents=True, exist_ok=True)</code>
exist_ok參數在Pytist_ok參數在Python 3.55中新增。
對於Python ≥ 3.2,os.makedirs具有可選的第三個參數exist_ok,當其為True時,啟用mkdir -p功能,但以下情況除外:提供了mode,並且現有目錄的權限與預期權限不同;在這種情況下,會像以前一樣引發OSError:
<code class="python">import os os.makedirs("/tmp/path/to/desired/directory", exist_ok=True)</code>
對於更早版本的Python,可以使用os.makedirs並忽略錯誤:
<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>
以上是如何在Python中建立帶有中間目錄的目錄?的詳細內容。更多資訊請關注PHP中文網其他相關文章!