Pythons afhængighed af eksterne filer er et afgørende aspekt, det er klogt at være opmærksom på basis-/kildefilerne, før der udføres nogen kode. Inden du kører et bestemt program, skal du sikre dig, at dine kildefiler findes på det angivne sted.

Hver udvikler forstår behovet for at oprette tilbagekaldskoder, som kan spare et prorgram fra at mislykkes, hvis en betingelse ikke er opfyldt. I Python er der flere måder at kontrollere, om der findes en fil; her er de bedste metoder, du bør vide om.

1. Prøv og undtag udsagn

Det prøv og undtagen sætning kontrollerer en kommando og producerer et output. I nedenstående kode er prøve erklæring vil forsøge at åbne en fil (testfil.txt). Hvis Pythons processor er i stand til at finde filen, åbner den filen og udskriver resultatet Filen er åben og tilgængelig til brug.

prøve:
f = open ('testfile.txt')
print ("Filen er tilgængelig til brug")
f.close ()
undtagen IOError:
print ('Filen er ikke tilgængelig')

Hvis det støder på en fejl, udskrives resultatet

instagram viewer
Filen er ikke tilgængelig. Når den fulde kode er samlet og udført, lukker den den åbne fil, hvis den blev åbnet.

Pythons afhængighed af eksterne filer er et afgørende aspekt, og du skal være opmærksom på basis-/kildefilerne, før du udfører koder.

Inden du udfører et bestemt program, skal du sikre dig, at dine kildefiler findes på det specifikke sted.

2. Os.path.isfile (sti)

Python har et indbygget modul-OS, som kan kaldes til at interagere med de underliggende filer, mapper og mapper. Pythons os.path.isfile () metode kan bruges til at kontrollere et bibliotek, og hvis der findes en bestemt fil.

Det første trin er at importere den indbyggede funktion ved hjælp af import os.path bibliotek. Den næste kommando kontrollerer, om filen findes på den specifikke placering.

import os.path
os.path.isfile (r "C: \ Users \ Wini Bhalla \ Desktop \ Python testfil.txt")

Outputtet vender tilbage Sand, da filen findes på det specifikke sted. Hvis filen ikke findes, vender Python tilbage Falsk.

3. Os.path.exists (sti)

På lignende grunde er import os bibliotekserklæring kan bruges til at kontrollere, om biblioteket findes på dit system.

Syntaksen er ret enkel:

Importér os.path
os.path.exists (r "C: \ Users \ Wini Bhalla \ Desktop \ test")

Ligesom det foregående trin, hvis mappen/mappen findes på den angivne systemsti, vender Python tilbage Sand, og efterfølgende Falsk, hvis biblioteket/mappen ikke findes.

Relaterede: Lærer du Python? Sådan kopierer du en fil

4. Os. Sti. Isdir (sti)

Ligesom os.path.isfile og os.path.exists (), os.path.isdir () er en sub-funktion af os-biblioteket. Den eneste forskel her er, at denne kommando kun fungerer for mapper. Som forventet returnerer brugen af ​​denne syntaks en boolsk værdi baseret på eksistensen af ​​mapper.

For eksempel:

import os
os.path.isdir (r "C: \ Users \ Wini Bhalla \ Desktop \ OS")

Outputtet er Sand, da mappen/biblioteket findes på den angivne sti.

import os
os.path.isdir (r "C: \ Users \ Wini Bhalla \ Desktop \ testdirectory")

Outputtet er Falsk, da mappen/biblioteket ikke findes på den angivne sti.

5. Pathlib.path.exists ()

Python 3.4 og nyere versioner tilbyder Pathlib modul, som kan importeres ved hjælp af importere fungere. Pathlib indsamler de nødvendige funktionaliteter på ét sted og gør det tilgængeligt via forskellige metoder til brug med stiobjektet.

Sådan bruges Pathlib:

import pathlib
fil = pathlib. Sti (r "C: \ Users \ Wini Bhalla \ Desktop \ Python testfil.txt")
hvis file.exists ():
print ("Filen findes")
andet:
print ("Filen findes ikke")

I henhold til filens eksistens vil output vise, om filen findes i den angivne sti eller ej. Ideelt set er koden i Print erklæring kan ændres i henhold til kravene i dit program

6. Os.listdir (sti)

Det listdir metode i Python returnerer en liste over alle filer i et bestemt bibliotek, som angivet af brugeren. Denne metode returnerer dog ingen filer, der findes i undermapper.

Det listdir metode accepterer kun en parameter, filstien. Ideelt set vil filstien være fil- og mappenavne, du gerne vil hente.

Den grundlæggende syntaks omfatter:

os.listdir (sti)

I eksemplet herunder kan du oprette en loop for at gå gennem alle de filer, der er angivet i biblioteket, og derefter kontrollere, om der findes en angivet fil med den angivne fil hvis udmelding.

import os
path = r'C: \ Users \ Wini Bhalla \ Desktop '
filer = os.listdir (sti)
udskriv (filer)

Denne kode udskriver listen over tilgængelige filer i det aktuelle bibliotek.

import os
sti = r'C: \ Brugere \ Wini Bhalla \ Desktop 'filer = os.listdir (sti)
for f i filer:
hvis f == "test.txt":
print ("Filen findes")
andet:
print ("Filen findes ikke")

Yderligere, når sløjfen køres, listdir fungere sammen med hvis sætningslogik vil gennemgå listen over filer og udskrive resultaterne afhængigt af betingelserne, der er bestået inden for Print udmelding.

Relaterede: Brug Loops With Lists i Python

7. Glob modul

Det glob modul matcher alle stinavne med de angivne parametre og giver dig kortfattet adgang til filsystemet. Da glob bruges til mønstermatchning, kan du bruge den til at kontrollere en fils status.

Der er to referencer til stien:

  • Absolut vej: Brug dette, når du vil lede efter en fil i et andet bibliotek.
  • Relativ vej: Brug dette når du ønsker at lede efter en fil i det aktuelle bibliotek.

Hvis filen findes, vender koden tilbage Sandellers vender den tilbage Falsk.

Et eksempel på Globs brug:

import glob
hvis glob.glob (r "C: \ Users \ Wini Bhalla \ Desktop \ test.txt"):
print ("Filen findes")
andet:
print ("Filen findes ikke")

Outputtet fra denne kode udskriver resultatet, hvis filen findes.

8. Delproces

Testkommandoen i delprocesmodulet er en effektiv måde at teste eksistensen af ​​filer og mapper. Testkommandoerne fungerer kun i Unix -baserede maskiner og ikke Windows -baserede OS -maskiner.

Du kan bruge følgende kommandoer efter dine behov:

  • test -e: Kontroller eksistensen af ​​en sti
  • test -f: Kontroller eksistensen af ​​en fil
  • test-d: Kontroller eksistensen af ​​en mappe

Verificering af en sti med delproces:

fra import af underproces
run (['test', '-e', 'testfile.txt']). returncode == 0
run (['test', '-e', 'im-not-here.txt']). returncode == 0

Denne kode kaldes testfunktionen efterfulgt af '-e' for at kontrollere eksistensen af ​​en sti. Funktionen viser Falsk for en ugyldig sti.

Kontrol af en fil med delproces:

run (['test', '-f', 'testfile.txt']). returncode == 0
run (['test', '-f', 'testdirectory']). returncode == 0

Det '-f' funktion tester eksistensen af ​​en fil og returnerer Falsk for et bibliotek.

Kontrol af en telefonbog med delproces:

run (['test', '-d', 'testfile.txt']). returncode == 0
run (['test', '-d', 'testdirectory']). returncode == 0

Det '-d' funktion tester eksistensen af ​​et bibliotek og returnerer Falsk for enhver filforespørgsel i testkommandoen.

Hvilken kommando vil du bruge til at finde dine filer?

Python er et relativt let at bruge sprog, og det tilbyder en masse muligheder for slutbrugerne. For at kontrollere eksistensen af ​​en eller flere filer kan du bruge en af ​​procedurerne ovenfor.

Men hvis du er nybegynder, er der altid måder at lære Python på. Da Python er et stort sprog, er det bedst at bruge lidt tid på at forstå de forskellige nuancer og dets rækkefølge af kommandoer.

DelTweetE -mail
Hvad gør Python, og hvad kan det bruges til?

Python er ekstremt alsidig med applikationer lige fra webudvikling til dataanalyse.

Læs Næste

Relaterede emner
  • Programmering
  • Python
  • Kodningstip
Om forfatteren
Wini Bhalla (41 artikler udgivet)

Wini er en Delhi -baseret forfatter, der har 2 års skriveerfaring. I løbet af hendes skrivestimer har hun været tilknyttet digitale marketingbureauer og tekniske firmaer. Hun har skrevet indhold relateret til programmeringssprog, cloud -teknologi, AWS, Machine Learning og meget mere. I fritiden kan hun lide at male, tilbringe tid med sin familie og rejse til bjergene, når det er muligt.

Mere fra Wini Bhalla

Abonner på vores nyhedsbrev

Tilmeld dig vores nyhedsbrev for at få tekniske tips, anmeldelser, gratis e -bøger og eksklusive tilbud!

Klik her for at abonnere