檢查檔案或路徑是否存在
使用 EAFP 編碼樣式和 try
開啟它。
import errno
try:
with open(path) as f:
# File exists
except IOError as e:
# Raise the exception if it is not ENOENT (No such file or directory)
if e.errno != errno.ENOENT:
raise
# No such file or directory
如果另一個程序在檢查之間和使用它時刪除了檔案,這也將避免競爭條件。在以下情況下可能會發生這種競爭情況:
-
使用
os
模組:import os os.path.isfile('/path/to/some/file.txt')
Python 3.x >= 3.4
-
使用
pathlib
:import pathlib path = pathlib.Path('/path/to/some/file.txt') if path.is_file(): ...
要檢查給定路徑是否存在,你可以按照上述 EAFP 過程,或明確檢查路徑:
import os
path = "/home/myFiles/directory1"
if os.path.exists(path):
## Do stuff