首頁  >  文章  >  後端開發  >  如何在 Python 中模擬 `mkdir -p` 功能?

如何在 Python 中模擬 `mkdir -p` 功能?

Barbara Streisand
Barbara Streisand原創
2024-10-28 19:40:29362瀏覽

How to Simulate the `mkdir -p` Functionality in Python?

Python mkdir -p 等價

要在 Python 中模擬 shell 的 mkdir -p 功能,有多種可用方法。

Python 3.5 及更高版本

Python 3.5 引入了pathlib.Path.mkdir 函數,其中包含parents 和exist_ok 參數。將parents設為True並將exist_ok設為True,它會建立目錄和任何不存在的父目錄,而不會引發錯誤:

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

Python 3.2及更高版本

對於Python 3.2 及更高版本,os.makedirs 函數有一個可選的第三個參數,exist_ok,可以將其設為True 以實現相同的行為:

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

早期Python 版本

對於舊版的Python,您可以使用os.makedirs 函數並在目錄已存在時捕獲OSError 異常,使用以下程式碼:

<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
        # possibly handle other errno cases here, otherwise finally:
        else:
            raise</code>

以上是如何在 Python 中模擬 `mkdir -p` 功能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn