logo

Python — kā pārbaudīt, vai fails vai direktorijs pastāv

Dažreiz ir jāpārbauda, ​​vai vārdnīca vai fails pastāv. Tas ir tāpēc, ka pirms faila ielādes, iespējams, vēlēsities pārliecināties, vai fails ir pieejams, vai arī vēlaties novērst jau esoša faila pārrakstīšanu.

Šajā apmācībā mēs apskatīsim svarīgu jēdzienu failu apstrāde Python par Kā pārbaudīt, vai fails jau pastāv programmā Python. Mēs apskatīsim četras metodes, lai pārbaudītu, vai fails vai direktorijs jau ir.



Kā pārbaudīt, vai Python pastāv fails vai direktorijs?

Lai pārbaudītu, vai Python fails vai direktorijs jau pastāv, varat izmantot šādas metodes:

  1. os.path.exists(ceļš): Pārbauda, ​​vai norādītajā ceļā pastāv fails vai direktorijs.
  2. os.path.isfile(ceļš): Pārbauda, ​​vai norādītajā ceļā pastāv fails.
  3. os.path.isdir(ceļš): Pārbauda, ​​vai norādītajā ceļā pastāv direktorijs.
  4. pathlib.path.exists(): Pārbauda, ​​vai pārstāvētais fails vai direktorijs pastāv (pathlib objekta daļa).

Izmantojot os.path.exists(), lai pārbaudītu, vai pastāv fails vai direktorijs

OS modulis Python nodrošina funkcijas mijiedarbībai ar operētājsistēmu. OS ietilpst Python standarta utilīta moduļos. Šis modulis nodrošina pārnēsājamu veidu, kā izmantot no operētājsistēmas atkarīgu funkcionalitāti.

dinamiskā programmēšana

os.path modulis ir Python OS moduļa apakšmodulis, ko izmanto kopīgu ceļa nosaukumu manipulācijām.



os.path.exists() metodi Python izmanto, lai pārbaudītu, vai norādītais ceļš pastāv vai ne. Varat izmantot šo metodi, lai pārbaudītu, vai fails vai direktorijs pastāv. Šo metodi var izmantot arī, lai pārbaudītu, vai norādītais ceļš attiecas uz an atvērt faila deskriptors vai nē.

Sintakse: os.path.exists(path)

Parametrs:



  • ceļš: Ceļam līdzīgs objekts, kas attēlo failu sistēmas ceļu.

Atgriezties: Atgriež TRUE, ja ceļš eksistē cits FALSE.

Piemērs: Pārbaude, vai ceļš pastāv, izmantojot 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)>

Izvade:

True False>

Izmantojot os.path.isfile() metodi, lai pārbaudītu, vai fails eksistē

os.path.isfile() metode Python izmanto, lai pārbaudītu, vai fails pastāv vai ne. Tas pārbauda, ​​vai norādītais ceļš ir esošs parastais fails.

ddl pret dml

Sintakse: os.path.isfile(ceļš)

Parametrs:

css pārejas necaurredzamība
  • ceļš: Ceļam līdzīgs objekts, kas attēlo failu sistēmas ceļu.

Atgriešanas veids: Atgriež TRUE, ja fails iziet, pretējā gadījumā FALSE

Piemērs: Pārbaude, vai ceļš, kas norāda uz resursu, ir fails

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)>

Izvade:

True False>

Izmantojot os.path.isdir() metodi, lai pārbaudītu, vai direktorijs pastāv

os.path.isdir() metode Python izmanto, lai pārbaudītu, vai norādītais ceļš ir esošs direktorijs. Šī metode seko simboliskai saitei, kas nozīmē, ka, ja norādītais ceļš ir simboliska saite, kas norāda uz direktoriju, metode atgriezīs True.

Sintakse: os.path.isdir(ceļš)

Parametrs:

  • ceļš: Ceļam līdzīgs objekts, kas attēlo failu sistēmas ceļu.

Atgriešanas veids: Atgriež TRUE, ja direktorijs pastāv, pretējā gadījumā FALSE

1. piemērs: Pārbaudiet, vai ceļš ir direktorijs, izmantojot 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(>


np.log

Izvade:

False True>

2. piemērs: Ja norādītais ceļš ir simboliska saite.

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)>

Izvade:

True True>

Izmantojiet pathlib.Path.exists(), lai pārbaudītu, vai fails vai direktorijs eksistē

pathlib modulis programmā Python nodrošina dažādas klases, kas attēlo failu sistēmu ceļus ar dažādām operētājsistēmām piemērotu semantiku. Šis modulis ietilpst Python standarta utilīta moduļos.

Ceļu nodarbības iekšā pathlib modulis tiek sadalīti tīrie ceļi un betona celiņi . Tīri ceļi nodrošina tikai skaitļošanas operācijas, bet nesniedz I/O darbības, savukārt konkrēti ceļi tiek mantoti no tīrajiem ceļiem, lai nodrošinātu skaitļošanas, kā arī I/O darbības.

pathlib.Path.exists() metode tiek izmantota, lai pārbaudītu, vai norādītais ceļš norāda uz esošu failu vai direktoriju.

Sintakse: pathlib.Path.exists(path)

Parametrs:

  • ceļš: Ceļam līdzīgs objekts, kas attēlo failu sistēmas ceļu.

Atgriešanas veids: Atgriež TRUE, ja fails vai direktorijs pastāv, pretējā gadījumā FALSE

Piemērs: Pārbaudiet, vai ceļš pastāv, izmantojot moduli 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())>

Izvade:

True>

Šajā apmācībā mēs esam apskatījuši 4 metodes, kā pārbaudīt, vai fails vai direktorijs jau pastāv programmā Python. Mēs esam apskatījuši OS moduļa un pathlib moduļa izmantošanu ar to attiecīgajām funkcijām, piemēram, os.path.isfile(), os.path.isdir(), pathlib.path.exists() utt. Šīs ir dažas no vienkāršākajām metodēm. var mēģināt pārbaudīt, vai fails jau pastāv programmā Python.

atšķirība starp uzņēmumu un uzņēmumu