Python File Stat

Python File Stat
Pythons OS -modul tilbyr et sett med metoder som gjør at brukerne kan samhandle med datamaskinens operativsystem. OS -modulen er klassifisert med Pythons andre grunnleggende verktøymoduler. Denne modulen tilbyr en bærbar tilnærming til å bruke funksjonalitet som er avhengig av operativsystemet. Et slikt eksempel er Stat () -modulen til Python som brukes til å skaffe all informasjonen på en fil eller mappe. Det fungerer ved å utføre en statssystemanrop på den spesifiserte banen. Det gir en rekke informasjon som inodetallet, størrelsen, antall harde lenker, tiden det ble opprettet og oppdatert, og mye mer. Statmodulen inkluderer konstanter og metoder for å tolke output fra OS. Stat (), OS. fStat (), og OS. fstat () funksjoner.

Syntaks for statsmetoden er som følger:

>> OS.State (sti)

Her er "banen" fullført. En bane som kan være representert som enten en tekst eller et byteobjekt som vi ønsker å få informasjonen eller statusen.

Denne funksjonen returnerer et "stat_result" -objekt av type "OS.Stat_result ”som beskriver banens status. Det returnerte "stat_result" -objektet inneholder følgende egenskaper:

  • ST_MODE: Den representerer filtypen og filmodusbiter (tillatelser).
  • ST_INO: På UNIX representerer det inodetallet. Men på Windows representerer det filindeksen.
  • ST_DEV: Dette er enhetens identifikasjon som denne filen er lagret.
  • Antall harde lenker er representert av ST_NLINK.
  • ST_UID: Dette er fileierens brukeridentitet.
  • ST_GID: Dette er fileierens gruppeidentitet.
  • ST_SIZE: Denne variabelen gjenspeiler filens størrelse i byte.
  • St_atime: Dette er den siste tilgangstiden. Det måles i sekunder.
  • St_mtime: Dette er tiden for den nyeste innholdsmodifiseringen. Det måles i sekunder.
  • ST_CTIME: På UNIX gjenspeiler det tiden for den siste metadatamodifiseringen. Mens på Windows representerer det skapelsestidspunktet. Det måles i sekunder.
  • St_atime ns: det samme som st_atime, bortsett fra tiden er gitt som et heltall i nanosekunder.
  • St_mtime ns: det samme som st_mtime, men tiden er gitt som et heltall i nanosekunder.
  • ST_CTIME NS: Det samme som ST CTIME, men tiden er gitt som et heltall i nanosekunder.
  • St_blocks: Antallet 512-byte-blokker tildelt filen.
  • Hvis enheten er en inode, er den representert av ST_RDEV.
  • ST_FLAGS: Det representerer filens brukerdefinerte flagg.

Merk: Noen attributter er plattformavhengige og er kanskje ikke tilgjengelig.
I denne artikkelen skal vi se på noen Python -kode, så vel som noen eksempler på staten () -modulen som Python tilbyr.

Eksempel 1:

Det er et veldig grunnleggende eksempel der vi skal spesifisere en fil til OS.Stat () Metode for å få filens status eller alle relaterte detaljer.v

I den første linjen lagres en fils bane i variabelen som heter "File_Path". Deretter OS.Stat () Metode kalles med filstien som dens parameter. Den returnerer statusen til objektet File_Path og lagres i den nye variabelen som heter “Statistikk”. Den hentede filstatusen eller detaljene blir deretter demonstrert på utdatasiden ved hjelp av publiseringsdirektivet, som sett i følgende utdrag:

Eksempel 2:

Vi kan se i forrige eksempel at OS.stat () Returnerer all informasjonen på en gang. Dette kan være veldig tungvint og forvirrende til tider, spesielt når vi bare trenger litt spesifikk informasjon. I dette eksemplet vises bare de begrensede attributtene til filen.

I koden som er gitt, importeres tre moduler i Python - OS, Stat og Time. I neste linje, OS.Stat () Metode kalles med en filbane i parameteren. Det oppretter et "stats_result" -objekt som gir status for filen som inneholder all informasjonen og attributtene til den filen. Deretter kalles 3 attributter med formatet "tid.CTIME ”som vises på utgangsterminalen ved hjelp av utskriftskommandoen. Først vises "st_atime". Da, "st_mtime". Og til slutt "st_ctime" som vist i følgende skjermbilde:

Eksempel 3:

Tilsvarende vises i dette eksemplet ST_Mode -attributtet til filen som angir filtypen og modusbitene til filen (tillatelser).

I det første trinnet importeres OS -modulen og statsmodulen til Python. I neste linje sendes en filsti til OS.Stat () Metode som returnerer filens tilstand, som inkluderer alle filens detaljer. Dette lagres i variabelen som heter “S”. For å vise modusbiter, “Stat.St_mode ”er kalt for objekter (som inneholder OS -statusen til filen). Dette får tilbake filens modusbiter, som deretter demonstreres ved å bruke publiseringsdirektivet i outputnoden som sett i følgende øyeblikksbilde:

Eksempel 4:

En annen veldig nyttig metode for STAT er å returnere størrelsen på filen. La oss se hvordan du kan ta tak i fillengden i Python ved å bruke OS Stat -pakken.

I Python er det første trinnet å skaffe OS og STAT -moduler. Etter det føres en filsti til OS -egenskapene til OS.Stat () Metode som returnerer statusen til den filen sammen med alle dens attributter. Dette lagres i variabelen som heter “Statistikk”. For å få størrelsen på filen, bare staten.ST_SIZE er kalt for "statistikk" -objektet og lagres i "A" -variabelen. Utskriftskommandoen brukes deretter til å vise det ved utgangsgrensesnittet, som også demonstrert i det følgende øyeblikksbildet. I dette scenariet er dokumentet 4 byte i størrelse:

Eksempel 5:

Vi kan bruke denne modulen for å finne typen fil også fordi den har flere funksjoner som fungerer som en sjekk for typen fil. I dette eksemplet testes flere metoder for denne modulen for å forutsi filtypen i et Python -program.

I dette første forsøket vil vi bruke multiple IF-Check-setningen der vi bruker ISDIR-metoden, ISREG-metoden og Islink-metoden som ser etter en katalog eller en vanlig fil eller til og med for en lenke, henholdsvis. I dette forsøket har vi gitt banen til en normal tekstfil, og vi får utskriftserklæringen til IF -blokken der tilstanden for den vanlige filen blir sann, som sett i følgende utdrag:

Nå vil vi bruke de samme blokkene av IF -utsagnene og sjekke disse metodene for å bekrefte om de kan oppdage en lenke i stedet for filens bane som parameter.

I dette forsøket ga vi en lenke til et nettsted i statsfunksjonen og ga den inn i parameteren til flere andre funksjoner. Utskriftserklæringen i Islink -funksjonen er hvis blokkering som er sant i denne situasjonen som vi kan se i følgende utgang:

Konklusjon

OS Stat -modulen er et veldig nyttig verktøy og kan brukes i mange brukssaker. Hvis du skriver til en fil og vil se om det er gjort endringer, kan du se på den siste endrede tiden. Du kan også direkte bekrefte filstørrelsen fra koden din. Det er flere applikasjoner, men de er mer sofistikerte og må vurderes i lys av situasjonen for hånden. Denne artikkelen skal hjelpe deg med å forstå hvordan OS Stat -modulen fungerer i Python.