Hvordan sjekke en fil eksisterer i Python

Hvordan sjekke en fil eksisterer i Python

Det er nødvendig å finne ut at noen fil eksisterer eller ikke for mange programmeringsformål. Det er for eksempel viktig å vite at filen eksisterer før du åpner en fil for lesing, ellers viser den en feilmelding. Hvis du vil forhindre overskriving av noen eksisterende fil, må du finne ut at filen allerede eksisterer eller ikke før du skriver. Det er mange innebygde funksjoner i Python for å sjekke eksistensen av enhver fil. De forskjellige måtene å sjekke en hvilken som helst fil på eksisterer eller ikke vises i denne opplæringen.

Sjekk om filen eksisterer ved hjelp av OS.sti.isfile ():

OS Modulen inneholder forskjellige metoder for å sjekke en hvilken som helst fil eller katalog eksisterer eller ikke. Følgende eksempel OS.sti.isfile () Metode av OS Modul brukes til å sjekke at filen eksisterer eller ikke. Her kan brukeren bare oppgi filnavnet hvis filen eksisterer på det nåværende stedet eller filnavnet med bane som inngang. NESTE, OS.sti.isfile () Metoden brukes til å sjekke banen er gyldig eller ikke, og det medfølgende filnavnet er filen eller en symlink av en fil.

#!/usr/bin/env python3
# Importer OS -modul
Importer OS
# Ta et filnavn
FN = input ("Skriv inn et filnavn for å lese: \ n")
# Kontroller at filen eksisterer eller ikke
Hvis OS.sti.ISFile (FN):
# Skriv ut meldingen hvis filen eksisterer
utskrift ("Fil eksisterer")
ellers:
# Skriv ut meldingen hvis filen ikke eksisterer
utskrift ("Filen eksisterer ikke")

Produksjon:

I den første inngangen blir et ugyldig filnavn gitt som inngang og utgangen viser 'Filen eksisterer ikke'. I den andre inngangen gis et gyldig filnavn som inngang og utgangen viser 'Filen eksisterer'.

Sjekk om filen eksisterer ved hjelp av OS.sti.eksisterer ():

I følgende skript, OS.sti.eksisterer () Metoden brukes til å sjekke eksistensen av en hvilken som helst fil. Metoden brukes til å teste hvilken som helst bane er en fil, katalog eller symlink. Her fungerer det på samme måte som forrige eksempel.

#!/usr/bin/env python3
# Importer OS -modul
Importer OS
# Ta et filnavn
FN = input ("Skriv inn et filnavn for å lese: \ n")
# Kontroller at filstien eksisterer eller ikke
Hvis OS.sti.eksisterer (FN):
# Skriv ut meldingen hvis banen eksisterer
utskrift ("Fil eksisterer")
ellers:
# Skriv ut meldingen hvis filstien ikke eksisterer
utskrift ("Filen eksisterer ikke")

Produksjon:

I den første inngangen gis en ugyldig filbane som input og OS.sti.eksisterer () returnerte falsk. Utgangen viser 'Filen eksisterer ikke'. I den andre inngangen gis en gyldig filbane som input og OS.sti.eksisterer () returnerte sann. Utgangen viser 'Filen eksisterer'.

Sjekk om filen eksisterer ved hjelp av is_file () av ​​pathlib -modulen:

PATHLIB Modul er en annen nyttig modul av Python for å sjekke en hvilken som helst fil eller katalog eksisterer eller ikke. Den inneholder forskjellige metoder som OS modul for å teste banen, filen eller katalogen. Følgende skript viser bruken av is_file () metode for denne modulen for å sjekke filen eksisterer eller ikke. Filnavnet vil bli hentet fra brukeren som forrige eksempel. Utgangen vises basert på returverdien av is_file () metode. Hvis filen eksisterer, så

Innholdet i filen vises.

#!/usr/bin/env python3
Fra pathlib importsti
# Ta et filnavn
FN = input ("Skriv inn et filnavn for å lese: \ n")
IF Path (FN).is_file ():
# Skriv ut meldingen hvis filsti eksisterer
trykk ("\ nfile eksisterer")
Skriv ut ("Innholdet i filen vist nedenfor:")
# Åpne filen for lesing
FH = åpen (FN)
# Skriv ut filinnholdet
Trykk (FH.lese())
ellers:
# Skriv ut meldingen hvis filstien ikke eksisterer
utskrift ("Filen eksisterer ikke")

Produksjon:

I den første inngangen blir et ugyldig filnavn gitt som inngang og utgangen viser 'Filen eksisterer ikke'. I den andre inngangen gis et gyldig filnavn som inngang og utgangen viser 'Filen eksisterer' og innholdet i filen vises.

Sjekk om filen eksisterer ved bruk av finnes () av ​​pathlib -modulen:

PATHLIB Modulen inneholder også eksisterer () metode som OS modul. Følgende eksempel viser bruken av denne metoden. Hvis filstien eksisterer, vil den vise innholdet i filen.

#!/usr/bin/env python3
Importer pathlib
# Ta et filnavn
FN = input ("Skriv inn et filnavn for å lese: \ n")
bane = pathlib.Sti (FN)
Hvis sti.eksisterer ():
# Skriv ut meldingen hvis filsti eksisterer
trykk ("\ nfile eksisterer")
Skriv ut ("Innholdet i filen vist nedenfor:")
# Åpne filen for lesing
FH = åpen (FN)
# Skriv ut filinnholdet
Trykk (FH.lese())
ellers:
# Skriv ut meldingen hvis filstien ikke eksisterer
utskrift ("Filen eksisterer ikke")

Produksjon:

I den første inngangen gis en ugyldig filbane som inngang og utgangen viser 'Filen eksisterer ikke'. I den andre inngangen gis en gyldig filbane som input og utdataene viser 'Filen eksisterer' og innholdet i filen vises.

Sjekk om filen eksisterer ved hjelp av unntakshåndtering:

Ved hjelp av Python Exception Handling -funksjonen kan du enkelt sjekke at filen eksisterer eller ikke. Følgende skript viser hvordan du kan sjekke at filen eksisterer uten å importere noen modul. Etter å ha tatt filnavnet, åpnes filen i prøve blokkere. Hvis filen ikke eksisterer, vil den generere et unntak og skrive ut en tilpasset feilmelding.

#!/usr/bin/env python3
# Ta et filnavn
FN = input ("Skriv inn et filnavn for å lese: \ n")
prøve:
# Åpne filen for lesing
FileHandler = Open (FN)
# Skriv ut følgende melding hvis intet unntak oppstår
utskrift ("Fil eksisterer")
# Lukk filen
FileHandler.Lukk()
Bortsett fra FilenotFoundError:
# Skriv ut følgende melding hvis det oppstår noen feil
utskrift ("Fil er ikke eksistens eller tilgjengelig")
endelig:
# Skriv ut termineringsmeldingen
Print ("End of the Program")

Produksjon:

Følgende utdata vises hvis et ugyldig filnavn er gitt og et gyldig filnavn er gitt.

Konklusjon:

De forskjellige måtene å sjekke filen eksisterer eller ikke i Python er beskrevet i denne opplæringen ved å bruke forskjellige typer eksempler. Python -moduler brukes i noen skript og unntakshåndtering brukes i et skript her. Brukeren kan følge noen av måtene for å sjekke filen eksisterer eller ikke.