У вас должно быть все хорошо, просто используйте os.path.isdir
.Это только ищет, если введенный путь является каталогом.В противном случае можно предположить, что это файл.Я проверил, чтобы увидеть, есть ли случаи, когда os.path.exists(path) and os.path.isdir(path) == os.path.isfile(path)
Вот результаты.
print(os.path.isdir("C:\\Users\\Kobe Thompson\\Desktop\\Test\\"))
print(os.path.exists("C:\\Users\\Kobe Thompson\\Desktop\\Test\\"))
print(os.path.isfile("C:\\Users\\Kobe Thompson\\Desktop\\Test\\"))
True, True, False
print(os.path.isdir("C:\\Users\\Kobe Thompson\\Desktop\\Test\\test"))
print(os.path.exists("C:\\Users\\Kobe Thompson\\Desktop\\Test\\"))
print(os.path.isfile("C:\\Users\\Kobe Thompson\\Desktop\\Test\\"))
Ложь, Правда, Ложь
print(os.path.isdir("C:\\Users\\Kobe Thompson\\Desktop\\Test\\test"))
print(os.path.exists("C:\\Users\\Kobe Thompson\\Desktop\\Test\\test"))
print(os.path.isfile("C:\\Users\\Kobe Thompson\\Desktop\\Test\\"))
Ложь, Ложь, Ложь
print(os.path.isdir("C:\\Users\\Kobe Thompson\\Desktop\\Test\\test"))
print(os.path.exists("C:\\Users\\Kobe Thompson\\Desktop\\Test\\test"))
print(os.path.isfile("C:\\Users\\Kobe Thompson\\Desktop\\Test\\test"))
Ложь, Ложь, Ложь,
Как видите, есть некоторые случаи, которые могут относиться как os.path.isdir, так и os.path.exists к os.path.isfile