logo

Python – Jak sprawdzić, czy plik lub katalog istnieje

Czasami konieczne jest sprawdzenie, czy słownik lub plik istnieje. Dzieje się tak dlatego, że możesz chcieć upewnić się, że plik jest dostępny przed jego załadowaniem, lub możesz chcieć zapobiec zastąpieniu już istniejącego pliku.

W tym samouczku omówimy ważną koncepcję obsługa plików w Pythonie o Jak sprawdzić, czy plik już istnieje w Pythonie. Omówimy cztery metody sprawdzania, czy plik lub katalog już istnieje.



Jak sprawdzić, czy plik lub katalog istnieje w Pythonie?

Aby sprawdzić, czy plik lub katalog już istnieje w Pythonie, możesz skorzystać z następujących metod:

  1. os.ścieżka.istnieje(ścieżka): Sprawdza, czy w podanej ścieżce istnieje plik lub katalog.
  2. os.path.isfile(ścieżka): Sprawdza, czy w podanej ścieżce istnieje plik.
  3. os.ścieżka.isdir(ścieżka): Sprawdza, czy pod podaną ścieżką istnieje katalog.
  4. ścieżkalib.ścieżka.istnieje(): Sprawdza, czy reprezentowany plik lub katalog istnieje (część obiektu Pathlib).

Używanie os.path.exists() do sprawdzania, czy plik lub katalog istnieje

Moduł systemu operacyjnego w Pythonie udostępnia funkcje umożliwiające interakcję z systemem operacyjnym. System operacyjny należy do standardowych modułów narzędziowych Pythona. Moduł ten zapewnia przenośny sposób korzystania z funkcjonalności zależnych od systemu operacyjnego.

algorytm kmp

moduł os.path jest podmodułem modułu systemu operacyjnego w Pythonie używanym do manipulacji popularnymi nazwami ścieżek.



metoda os.path.exists(). w Pythonie służy do sprawdzania, czy określona ścieżka istnieje, czy nie. Możesz użyć tej metody, aby sprawdzić, czy plik lub katalog istnieje. Metodę tę można również zastosować do sprawdzenia, czy podana ścieżka odnosi się do pliku otwarty deskryptor pliku albo nie.

Składnia: os.ścieżka.istnieje(ścieżka)

Parametr:



  • ścieżka: Obiekt podobny do ścieżki reprezentujący ścieżkę systemu plików.

Powrót: Zwraca wartość PRAWDA, jeśli ścieżka istnieje, a w innym przypadku FAŁSZ.

Przykład: Sprawdzanie, czy ścieżka istnieje za pomocą os.path.exists()

Python3
import os # Specify path  path = '/usr/local/bin/' # Check whether the specified  # path exists or not  isExist = os.path.exists(path) print(isExist) # Specify path  path = '/home/User/Desktop/file.txt' # Check whether the specified  # path exists or not  isExist = os.path.exists(path) print(isExist)>

Wyjście:

True False>

Użycie metody os.path.isfile() do sprawdzenia, czy plik istnieje

metoda os.path.isfile(). w Pythonie służy do sprawdzania, czy plik istnieje, czy nie. Sprawdza, czy określona ścieżka jest istniejącym zwykłym plikiem, czy nie.

pandy idą

Składnia: os.path.isfile(ścieżka)

Parametr:

  • ścieżka: Obiekt podobny do ścieżki reprezentujący ścieżkę systemu plików.

Typ zwrotu: Zwraca wartość PRAWDA, jeśli plik zostanie zamknięty, w przeciwnym razie FAŁSZ

Przykład: Sprawdzanie, czy ścieżka wskazująca na zasób jest plikiem

Python3
import os # Path  path = 'C:/Users/gfg/Desktop/file.txt' # Check whether a path pointing to a file isFile = os.path.isfile(path) print(isFile) # Path path = '/home/User/Desktop/' # Check whether the path is a file isFile = os.path.isfile(path) print(isFile)>

Wyjście:

True False>

Użycie metody os.path.isdir() do sprawdzenia, czy katalog istnieje

metoda os.path.isdir(). w Pythonie służy do sprawdzania, czy określona ścieżka jest istniejącym katalogiem, czy nie. Ta metoda korzysta z dowiązania symbolicznego, co oznacza, że ​​jeśli określona ścieżka jest dowiązaniem symbolicznym wskazującym na katalog, wówczas metoda zwróci True.

numpy wyjątkowy

Składnia: os.ścieżka.isdir(ścieżka)

Parametr:

  • ścieżka: Obiekt podobny do ścieżki reprezentujący ścieżkę systemu plików.

Typ zwrotu: Zwraca wartość PRAWDA, jeśli katalog istnieje, w przeciwnym razie FAŁSZ

Przykład 1: Sprawdź, czy ścieżka jest katalogiem, używając os.path.isdir()

Python3
import os.path # Path  path = '/home/User/Documents/file.txt' # Check whether the path is an existing directory isdir = os.path.isdir(path) print(isdir) # Path  path = '/home/User/Documents/' # Check whether the path is a directory isdir = os.path.isdir(>


Wyjście:

False True>

Przykład 2: Jeśli określona ścieżka jest dowiązaniem symbolicznym.

Python3
import os.path # Create a directory dirname = 'GeeksForGeeks' os.mkdir(dirname) # Create a symbolic link  # pointing to above directory  symlink_path = '/home/User/Desktop/gfg' os.symlink(dirname, symlink_path) path = dirname # Check whether the specified path is an  # existing directory or not  isdir = os.path.isdir(path) print(isdir) path = symlink_path # check whether the symlink is  # an existing directory or not isdir = os.path.isdir(path) print(isdir)>

Wyjście:

True True>

Użycie pathlib.Path.exists() do sprawdzenia, czy plik lub katalog istnieje

moduł pathlib w Pythonie udostępnia różne klasy reprezentujące ścieżki systemu plików z semantyką odpowiednią dla różnych systemów operacyjnych. Moduł ten należy do standardowych modułów narzędziowych Pythona.

Klasy ścieżki w moduł pathlib Są podzielone na czyste ścieżki I betonowe ścieżki . Czyste ścieżki zapewniają jedynie operacje obliczeniowe, ale nie zapewniają operacji we/wy, podczas gdy ścieżki konkretne dziedziczą z czystych ścieżek, aby zapewnić zarówno operacje obliczeniowe, jak i we/wy.

C

ścieżkalib.Ścieżka.istnieje() Metoda służy do sprawdzenia, czy podana ścieżka wskazuje na istniejący plik lub katalog, czy nie.

Składnia: ścieżkalib.Ścieżka.istnieje(ścieżka)

Parametr:

  • ścieżka: Obiekt podobny do ścieżki reprezentujący ścieżkę systemu plików.

Typ zwrotu: Zwraca wartość PRAWDA, jeśli plik lub katalog istnieje, w przeciwnym razie FAŁSZ

Przykład: Sprawdź, czy ścieżka istnieje, używając modułu pathlib

Python3
# Import Path class from pathlib import Path # Path path = '/home/tuhingfg/Desktop' # Instantiate the Path class obj = Path(path) # Check if path exists print('path exists?', obj.exists())>

Wyjście:

True>

W tym samouczku omówiliśmy 4 metody sprawdzania, czy plik lub katalog już istnieje w Pythonie. Omówiliśmy użycie modułu systemu operacyjnego i modułu pathlib z odpowiadającymi im funkcjami, takimi jak os.path.isfile(), os.path.isdir(), pathlib.path.exists() itp. Są to jedne z najłatwiejszych metod, jakie możesz zastosować możesz spróbować sprawdzić, czy plik już istnieje w Pythonie.

Aktorka Sai Pallavi