Jak sprawdzić, czy w Pythonie istnieje plik lub katalog

Jak sprawdzić, czy w Pythonie istnieje plik lub katalog

Python OS.ścieżka Moduł jest używany do manipulacji plik lub katalogu. Metoda Isfile () tego modułu służy do sprawdzania, czy jakikolwiek plik jest dostępny, czy nie. podobnie istnieje () Funkcja zwraca True dla plików i katalogu istnieje.

Ten samouczek obejmuje:

  1. Sprawdź, czy plik istnieje w Python
  2. Sprawdź, czy plik jest czytelny w Pythonie
  3. Utwórz katalog, jeśli nie istnieje w Pythonie

1. Sprawdź, czy plik istnieje

Na przykład, aby sprawdzić, jak Isfile () I istnieje () Funkcje działają. Stwórz Test testowy.py Plik za pomocą następującej treści i wykonania go Python.

  • Isfile () - Sprawdź funkcję, czy podany plik wejściowy istnieje i jest katalogiem pliku, a nie.
  • istnieje () - Sprawdź funkcję, czy podany plik wejściowy/katalog istnieje.

Zobacz poniższe przykłady:

Import OS.Path Print OS.ścieżka.isFile ("/etc/hosts") #true print OS.ścieżka.isFile („/etc”) #false print OS.ścieżka.isFile ("/czy/not/ext") #false print OS.ścieżka.istnieje („/etc/hosts”) #true print OS.ścieżka.istnieje („/etc”) #true print OS.ścieżka.istnieje ("/czy/not/istnieją") #false
12345678Import OS.Path Print OS.ścieżka.isFile ("/etc/hosts") #truePrint OS.ścieżka.ISFILE („/etc”) #falsePrint OS.ścieżka.isFile ("/czy/not/ext") #falSeprint OS.ścieżka.istnieje („/etc/hosts”) #truePrint OS.ścieżka.istnieje („/etc”) #truePrint OS.ścieżka.istnieje ("/czy/not/istnieją") #false

Python> = 3.4 Użytkownicy mogą użyć podejścia zorientowanego na obiekt, aby sprawdzić, czy plik istnieje, czy nie. Musimy zaimportować ścieżkę z modułu ścieżki.

od ścieżki importowej nazwa ścieżki Importu.is_file (): print („plik ext”) else: print („plik nie istnieje”)
12345678od ścieżki importowej nazwa ścieżki Importu.is_file (): print („plik ext”) else: print („plik nie istnieje”)

2. Sprawdź, czy plik jest czytelny

Możesz również sprawdzić, czy plik istnieje i jest czytelny dla obecnych użytkowników w Python.

Import OS.Ścieżka, jeśli OS.ścieżka.ISFILE ('/etc/hosts') i OS.Access ('/etc/hosts', OS.R_OK): wydrukuj „Plik istnieje i jest czytelny” else: drukuj „Brak pliku lub nie jest czytelny”
123456Import OS.Ścieżka, jeśli OS.ścieżka.ISFILE ('/etc/hosts') i OS.Access ('/etc/hosts', OS.R_OK): wydrukuj „Plik istnieje i jest czytelny” else: drukuj „Brak pliku lub nie jest czytelny”

#3. Python - Sprawdź, czy plik linku

Używać OS.ścieżka.Islink Aby znaleźć, czy jakikolwiek plik to plik linku.

Import OS.Ścieżka, jeśli OS.ścieżka.ISFILE („/etc/hosts”) i OS.ścieżka.isLink („/etc/hosts”): drukuj „To jest plik linku” else: drukuj „To jest rzeczywisty plik”
123456Import OS.Ścieżka, jeśli OS.ścieżka.ISFILE („/etc/hosts”) i OS.ścieżka.isLink („/etc/hosts”): drukuj „To jest plik linku” else: drukuj „To jest rzeczywisty plik”

3. Utwórz katalog, jeśli nie istnieje

Używać OS.ścieżka.istnieje Aby sprawdzić, czy jakikolwiek katalog istnieje, czy nie, i użyć OS.Makedirs Aby utworzyć katalog. Poniższy przykład utworzy katalog /tmp/newdir jeśli nie istnieje.

Jeśli nie OS.ścieżka.istnieje ('/tmp/newdir'): OS.Makedirs ('/tmp/newdir')
12Jeśli nie OS.ścieżka.istnieje ('/tmp/newdir'): OS.Makedirs ('/tmp/newdir')