Frage:
Wie kann ich ohne Rückgriff feststellen, ob eine Datei vorhanden ist? Ausnahme Handhabung?
Antwort:
Try-Exception-Ansatz:
Beim Verwenden eines Try-Except-Blocks, um nach Dateien zu suchen Obwohl die Existenz intuitiv erscheint, birgt sie ein Sicherheitsrisiko. Angenommen, Sie planen, die Datei nach der Überprüfung zu öffnen. In diesem Fall besteht die Möglichkeit, dass die Datei zwischen den Prüf- und Öffnungsvorgängen gelöscht oder geändert wird.
os.path.isfile:
Für Fälle, in denen eine sofortige Datei Das Öffnen ist nicht erforderlich, Sie können os.path.isfile nutzen. Diese Funktion wertet aus, ob der angegebene Pfad auf eine vorhandene Datei verweist, einschließlich derjenigen, auf die über symbolische Links zugegriffen wird.
import os.path os.path.isfile(fname)
Pathlib-Ansatz (Python 3.4):
Python 3.4 führte pathlib für einen objektorientierten Dateisystem-Interaktionsansatz ein.
Um nach Dateien zu suchen Existenz:
from pathlib import Path my_file = Path("/path/to/file") if my_file.is_file(): # file exists
Für Verzeichnisse:
if my_file.is_dir(): # directory exists
Um die Existenz eines Pfads unabhängig vom Dateityp zu überprüfen:
if my_file.exists(): # path exists
Zusätzlich können Sie „resolve“ verwenden (strict=True) innerhalb eines Try-Blocks für eine genauere Prüfung:
try: my_abs_path = my_file.resolve(strict=True) except FileNotFoundError: # doesn't exist else: # exists
Das obige ist der detaillierte Inhalt vonWie kann ich in Python auf Dateiexistenz prüfen, ohne Ausnahmen zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!