When working with files in Python, you’ll often need to check if a file exists before you do anything else with it, such as reading from or writing to it. Luckily, the Python standard library makes this a piece of cake.
Use pathlib.Path.exists(path) to check for files and directories 🔗
from pathlib import Path
path_exists = Path.exists("home/dir/file.txt")
if path_exists:
print("found it!")
else:
print("not found :(")
Notice that path_exists
will be True
whether this is a file or a directory, it’s only checking if the path exists.
Note: On older versions of Python you may not have access to the pathlib module. If that’s the case, you can use os.path.exists()
.
from os.path import exists
path_exists = exists("home/dir/file.txt")
if path_exists:
print("found it!")
else:
print("not found :(")
Use pathlib.Path(path).is_file() to check for only files 🔗
from pathlib import Path
file_exists = Path.is_file("home/dir/file.txt")
if file_exists:
print("found it!")
else:
print("not found :(")
Use pathlib.Path(path).is_dir() to check for only directories 🔗
from pathlib import Path
dir_exists = Path.is_dir("home/dir")
if dir_exists:
print("found it!")
else:
print("not found :(")
Use pathlib.Path(path).is_symlink() to check for only symlinks 🔗
A symlink is a path that points to, or aliases another path in a filesystem.
from pathlib import Path
symlink_exists = Path.is_dir("home/dir/some_symlink")
if symlink_exists:
print("found it!")
else:
print("not found :(")