Python Pathlib Path

Python Pathlib Path

Ulike operativsystemer følger forskjellige sett med retningslinjer for å generere filstier. For eksempel er stier i Linux betegnet med fremre skråstreker, men på Windows er de betegnet med ryggskjermer. Hvis du jobber med et prosjekt og vil at andre utviklere fra forskjellige operativsystemer skal utvide koden din, kan dette tilsynelatende ubetydelige skillet skape noen utfordringer. Hvis du skriver kode i Python, vil du være lettet over å vite at PathLib -modulen tar seg av gryntarbeidet for deg ved å sikre at filstiene du spesifiserer er kompatible på tvers av forskjellige operativsystemer. I tillegg tilbyr den funksjoner og operasjoner som vil hjelpe deg å spare tid mens du administrerer og endrer stier.

Eksempel 01

Den rene banen er et sett med verktøy som lar deg administrere og endre banen til filen din uten å måtte utføre noen skriveoperasjoner. Hvert baneobjekt i pathlib kan skaffe seg håndteringsoperasjoner fra rotnoden, som kalles PurePath ().

I eksempel 1 vil vi bruke “er.Absolute () ”metode for ren sti. Den returnerer en verdi som indikerer om banen er absolutt. Hvis en sti starter med rotmappen, blir den banen sett på som en absolutt bane og returnerer sann. Ellers er det falskt.


I forrige kode importeres den første pathlib -modulen. I neste linje opprettet vi en ny variabel, “P”, for å lagre filens bane. Her brukte vi et rent baneobjekt fra pathlib med filstien i parameteren. For å sjekke om filstien er absolutt eller ikke, brukte vi IS_ABSOLUTE -metoden med objektet “P” som inneholder filstien. Returverdien lagres i den nydefinerte variabelen “E”. Verdien vises på utgangsterminalen ved hjelp av utskriftskommandoen, som vist på skjermdumpen nedenfor. Siden utgangen er sant, indikerer dette at filstien er absolutt eller starter med rotmappen.


Her er et annet eksempel på en ikke absolutt sti.

I dette eksemplet er det definert en ren ban. Som et resultat, ".is_absolute () ”-metoden ville returnere falsk, som sett i følgende skjermbilde:


Eksempel 02

Vi vil bruke metoden “is_relative_to ()” i dette eksemplet. Denne banen er relativt til den nåværende arbeidskatalogen til programmet. Det indikerer om denne banen er relatert til den andre banen som er nevnt i sin parameter for å sammenligne.


PathLib -modulen importeres først i Python for å bruke metodene og funksjonene i forrige kode. I neste linje er en ren bane definert med adressen gitt i parameteren og lagres i variabelen som heter “P”. Deretter kalles dette objektet "P", som inneholder filstien, med metoden "IS_RELIVEATE_TO ()" med "C:" som parameter. Programmet vil sjekke om banen er relatert til “C:”. Dette gjelder i dette tilfellet, som banen som er definert var “C: \ brukere \ AQSA \ Desktop \ Random.tekst". Verdien som returneres vil bli lagret i den nye variabelen som heter “D”. Til slutt, ved å bruke utskriftskommandoen, vises resultatet i utgangsterminalen som vist i følgende øyeblikksbilde:


Nedenfor er et annet eksempel på den samme metoden. Her er den rene banen definert, og ".is_relative_to ”-metoden brukes med“ brukere ”som parameter. Rotmappen samsvarer ikke med parameteren som er bestått. Som et resultat blir falsk returnert i dette tilfellet.


Eksempel 03

Stier skrives med tilbakeslag (\) som mappenavn -separator på Windows. På UNIX-baserte operativsystemer bruker vi den fremre skråstreken (/) for å skille stier. Å bli med stier kan være problematisk hvis koden din må fungere på flere plattformer. Python gjør dette enkelt å administrere som vei.joinpath (), en annen pathlib biblioteksmetode, ved å kombinere banen med de spesifiserte parametrene.


Den forrige koden viser et eksempel på en bane.joinpath () -metode på en enkleste måte. For det første importeres PathLib -modulen. Deretter er en ren bane definert med adressen som er nevnt i sin parameter og lagres i variabelen som heter “P”. I neste linje er denne banen sammen med en barnesti ved å bruke sti.joinpath () med “tilfeldig.txt ”som sin parameter. Som et resultat vil den nye adressen være “C: \ Brukere \ AQSA \ Desktop \ Random.txt \ tilfeldig.tekst". Denne nye banen lagres i den nye variabelen som heter “C”. Til slutt, ved å bruke utskriftskommandoen, kan vi se resultatet vist i utgangsterminalen som vist i følgende øyeblikksbilde:

Eksempel 04

En annen metode for pathlib -modulen er ".med_name () ”. Denne metoden er nyttig for å endre den siste banen til adressen. Den gir nytt navn til den siste banen til adressen ved å legge til parameteren som er gitt til den bare midlertidig. Det er viktig at en feil kan mottas på terminalen hvis den spesifiserte banen ikke inkluderer et navn.


PathLib -modulen importeres først for å bruke “.with_name () ”-metoden i dette eksempelkoden. En ren bane er definert i neste linje som er lagret i den definerte variabelen “P”. Som vi kan se, er stienes siste del “tilfeldig.tekst". Målet vårt er å endre akkurat denne delen. Neste linje bruker ".with_name () ”-metoden med“ gi nytt navn.txt ”som sin parameter. Det vil tillate oss å erstatte “tilfeldig.txt ”midlertidig med“ gi nytt navn.tekst". Denne nye banen lagres i den nye variabelen som heter “D”. Til slutt, ved å bruke utskriftskommandoen, kan vi se resultatet vist i utgangsterminalen som vist i følgende skjermbilde:

Eksempel 05

Nok en metode for pathlib, som vi vil diskutere i dag, er "with_suffix ()" oppdaterer suffikset eller utvidelsen av den siste komponenten i banen din midlertidig med parameteren som er gitt til den. Det eksisterende suffikset vil også bli fjernet hvis vi ikke inkluderer suffikset og lar argumentet være tomt.


Det forrige eksemplet forklarer “.med_suffix () ”-metoden. Siden det er metoden for pathlib -modulen, ble pathlib importert innledningsvis. Deretter er en ren bane definert med en adresse og lagres i variabelen som heter “P”. I neste linje, ".With_suffix () ”-metoden kalles“ P ”-objektet med parameteren”.JS ”. Dette vil erstatte adressens opprinnelige suffiks ".txt ”med“.JS ”. Den oppdaterte adressen lagres i den nye variabelen som heter “M”, og ved å bruke utskriftskommandoen har vi vist resultatene vi får fra den i følgende skjermbilde:

Konklusjon:

Denne artikkelen diskuterer hvordan og hvorfor pathlib er viktig for håndtering og manipulering av filsystembaner og de forskjellige metodene for catering til pathlib -funksjonen. Vi har sett forskjellige eksempler i denne guiden om pathlib -metoder, for eksempel is_absolute, is_relative_to, joinpath, with_name og with_suffix. Alle disse metodene er en del av PathLib Path () -funksjonen. Ved å bruke disse metodene har vi sjekket om banen vi har tildelt er enten absolutt eller slektning ved å bruke IS_ABSOLUTE og IS_RELATIVE_TO METODER. Vi har lært hvordan du kan bli med på to stier ved hjelp av joinpath -metoden. Denne artikkelen forklarte også hvordan du skal gi nytt navn.