От автора: в этом руководстве мы узнаем, как определить, существует ли файл (или каталог) в Python. Чтобы проверить это, мы используем встроенные функции библиотеки.
Есть разные способы проверить, существует ли файл или каталог, используя функции, перечисленные ниже.
os.path.exists()
os.path.isfile()
os.path.isdir()
pathlibPath.exists()
os.path.exists()
Используя path.exists, вы можете быстро проверить, существует ли файл или каталог.
Шаг 1) Перед запуском кода нужно импортировать модуль os.path.
import os.path from os import path
Шаг 2) Теперь используйте функцию path.exists(), чтобы проверить, существует ли файл.
path.exists("guru99.txt")
Шаг 3) Вот полный код
import os.path from os import path def main(): print ("file exist:"+str(path.exists('guru99.txt'))) print ("File exists:" + str(path.exists('career.guru99.txt'))) print ("directory exists:" + str(path.exists('myDirectory'))) if __name__== "__main__": main()
В нашем случае в рабочем каталоге создается только файл guru99.txt.
# Вывод: File exists: True File exists: False directory exists: False
os.path.isfile()
Мы можем использовать команду isfile, чтобы проверить, является ли данный ввод файлом или каталогом.
import os.path from os import path def main(): print ("Is it File?" + str(path.isfile('guru99.txt'))) print ("Is it File?" + str(path.isfile('myDirectory'))) if __name__== "__main__": main() # Вывод: # Is it File? True # Is it File? False
os.path.isdir()
Если мы хотим подтвердить, что данный путь указывает на каталог, мы можем использовать функцию os.path.dir():
import os.path from os import path def main(): print ("Is it Directory?" + str(path.isdir('guru99.txt'))) print ("Is it Directory?" + str(path.isdir('myDirectory'))) if __name__== "__main__": main() # Вывод: # Is it Directory? False # Is it Directory? True
pathlibPath.exists() для Python 3.4
В Python 3.4 и более поздних версиях есть модуль pathlib для работы с путем к файлу. Он использует объектно-ориентированный подход, чтобы проверить, существует файл или нет.
import pathlib file = pathlib.Path("guru99.txt") if file.exists (): print ("File exist") else: print ("File not exist") # Вывод: # File exist
Вот полный код:
import os from os import path def main(): # Выводим имя OS print(os.name) #Проверяем наличие элемента и тип print("Item exists:" + str(path.exists("guru99.txt"))) print("Item is a file: " + str(path.isfile("guru99.txt"))) print("Item is a directory: " + str(path.isdir("guru99.txt"))) if __name__ == "__main__": main() # Вывод: # Item exists: True # Item is a file: True # Item is a directory: False
Заключение:
Используйте path.exists, чтобы проверить, существует ли файл
Используйте path.isfile и path.isdir, чтобы проверить, существует ли путь к файл или каталогу соответственно
В Python 3.4 и более поздних версиях используйте модуль pathlib, чтобы проверить, существует ли файл.
Источник: https://www.guru99.com
Редакция: Команда webformyself.