Liste filer i en katalog python

Liste filer i en katalog python
I Python bruker vi det innebygde “OS” -biblioteket for å vise filene i en Python-katalog. Vi bruker Python OS.ListDir () -funksjon, som gir en fullstendig oversikt over alle filer og mapper i en katalog. Funksjonen returnerer imidlertid et depot av hver fil i et helt filtre. Katalogen blir også betraktet som en mappe for å finne og oppbevare filer eller flere mapper. Nå kommer Python med flere API -er for å vise kataloginnholdet. Noen ganger, mens du fungerer med filer i Python, oppstår en situasjon der du trenger å vise filene i en katalog. For å løse dette problemet, har vi kommet med forskjellige eksempelkoder.

Forutsetninger

Nå viser vi noen få forutsetninger som er essensielle før du går mot eksemplene relatert til denne artikkelen:

  • Ethvert operativsystem. I eksemplene våre har vi brukt Windows 10.
  • Enhver Python -kompilator. I vårt eksempel er det Spyder Ide.

Eksempel 1

I vår første illustrasjon bruker vi OS.ListDir () -teknikk som får tilgang til alle filer og mapper i en katalog. OS.ListDir () -metode i Python viser filer og mapper i en angitt katalog. Men det returnerer ikke noen spesialtegn som ".”Og“… ”, som OS bruker for å iterere gjennom forskjellige kataloger. Funksjonen tar bare ett argument, jeg.e., Fildestinasjonen til katalogen hvis mappe og filnavn du vil ha tilgang til. Ikke bare dette, men også, det returnerer ingenting i undermappene som er utforsket av denne tilnærmingen.

Vi bruker Spyder -kompilatoren for å implementere OS.listDir () -metode. For å gå videre, oppretter du en ny fil ved å gå til filmenyen og deretter begynne å skrive Python -koden din. Til å begynne med importerer vi en OS -modul. Deretter definerer vi en bane der alle filene og mappene våre er plassert. Etter dette er vi alle OS.listDir () funksjon for å få tilgang til alle filene og mappene som er til stede på det spesifiserte stedet. Vi kan deretter bruke en utskriftsfunksjon som viser alle de tilgjengelige filene og mappene. Metoden OS.listDir () er ganske enkelt og nyttig. Bare to til tre kodelinjer kan løse problemet ditt, og koden kan sees her:

Importer OS
x = "D: \ Kalsoom"
DL = OS.ListDir (x)
Skriv ut ("Listen over alle filer og kataloger i denne banen '", x, "':")
trykk (DL)

Etter implementering av OS.listDir () -funksjon, lagre kodefilen med et hvilket som helst navn. Ikke glem å legge til “.py ”utvidelse mens du lagrer kodefilen. Nå er det på tide å utføre programkoden og se listen over alle filer og mapper på skjermen. Utfør ved å treffe “F5”:

Eksempel 2

I vår andre illustrasjon bruker vi OS.Scandir () -teknikk som får tilgang til alle filer og mapper etter itering over hele katalogen. Vi bruker Spyder -kompilatoren for å implementere OS.Scandir () -metode. Vi bruker den samme filen for å få tilgang til filer i katalogen. Funksjonen tar også ett argument akkurat som OS.ListDir (). Til å begynne med importerte vi en OS -modul akkurat som vi gjorde tidligere. Deretter definerer vi en bane der alle filene og mappene våre er plassert. Etter dette bruker vi OS.Scandir () Funksjon for å få tilgang til alle filene og mappene som er til stede på det spesifiserte stedet og tilordne den til variabel “OBJ1”. Funksjonen skanner først hele katalogen. Deretter får det en indeks over OS.Direntry enheter.

Deretter kan vi bruke utskriftsfunksjonen, som viser alle filene og mappene som ligger i den spesifiserte banen. Etter dette bruker vi en for loop og hvis uttalelse, som søker på filene og mappen i den spesifiserte banen og deretter viser den resulterende fil- og mappenavnet på konsollskjermen. Metoden er effektiv når den skanner hele katalogen og returnerer indeksen eller iteratoren:

Importer OS
P = "D: \ Kalsoom"
obj1 = OS.Scandir ()
Print ("Filer og kataloger i ' % S':" % P)
for oppføring i obj1:
Hvis inngang.is_dir () eller oppføring.is_file ():
trykk (oppføring.Navn)

Igjen, lagre programfilen og trykk F5 for å kjøre koden:

Konklusjon

Her diskuterte vi de to enkleste metodene for å vise filene og mappene som eksisterer i katalogen. Metoden OS.ListDir () vil liste opp alt som er til stede i katalogen, for eksempel alle filer og mapper. Hvis du vil ha filtype sammen med navnet, kan du bruke OS.Scandir (). Den produserer Direntry -objekter som inneholder filtype og navnet.