Replikation der Funktionalität von mkdir -p in Python
Der Befehl mkdir -p auf Unix-ähnlichen Systemen erstellt nahtlos ein Verzeichnis und seine übergeordneten Pfade sofern sie noch nicht vorhanden sind. Gibt es eine native Python-Lösung, die eine ähnliche Funktionalität bietet?
Lösung:
Glücklicherweise bieten verschiedene Versionen von Python Lösungen für diese Aufgabe:
Für Python 3.5 und höher:
Python 3.5 führte pathlib.Path.mkdir mit den Argumenten parent=True und exist_ok=True ein:
<code class="python">import pathlib pathlib.Path("/tmp/path/to/desired/directory").mkdir(parents=True, exist_ok=True)</code>
Für Python 3.2 und höher:
os.makedirs bietet das Argument exist_ok, das, wenn es auf True gesetzt ist, die mkdir -p-Funktionalität aktiviert:
<code class="python">import os os.makedirs("/tmp/path/to/desired/directory", exist_ok=True)</code>
Für älteres Python Versionen:
Für Python-Versionen vor 3.2 können Sie os.makedirs verwenden und alle Fehler im Zusammenhang mit vorhandenen Verzeichnissen ignorieren:
<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 # Handle other errors here or raise a generic exception.</code>
Das obige ist der detaillierte Inhalt vonWie kann ich die Funktionalität „mkdir -p' in Python replizieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!