I'm trying to validate if a directory received as user input exists using the os module
This is how I'm accepting the input:
directory = input("Hi ! \n please type a directory, thanks !")
The idea is that I want to make sure the user will type an existing directory and nothing else
from pathlib import Path
def is_valid_directory(filename):
p = Path(filename)
return p.exists() and p.is_dir()
pathlib
is an enormously convenient module for working with file paths of any sort. The p.exists()
call is redundant since p.is_dir()
returns False
for nonexistent paths, but checking both would allow you to e.g. give better error messages.
EDIT: Note that pathlib
was added in Python 3.4. If you're still using an old version for whatever reason, you can use the older os.path.isdir(filename)
function.