Python gir forskjellige metoder for å samhandle med operativsystemet for å manipulere filnavn og katalognavn gjennom OS -modulen. Denne artikkelen diskuterer en av Python-innebygde metodene som brukes til å hente basenavnet til en fil med en gitt bane: OS.sti.Basename () -metode, som lar oss trekke ut filnavnet fra en spesifisert bane.
Vi må bruke OS.sti.basename () i kode ved å importere OS -modulen. Denne metoden OS.sti.Basename () bruker videre en delt () -funksjon for å dele banestrengen i et par som vil returnere hode og hale. Hodedelen er for katalognavnet, og haledelen blir returnert av OS.sti.basename () -metode. La oss ha mer detaljer om denne metoden.
Syntaks av Python basename:
For å få filnavnet som er basenavnet fra en bane, må vi bruke denne syntaksen.
OS.sti.basename (sti)OS.Sti er en undermodus av OS-modulen for manipulasjon av banenavn. Så til å begynne med må vi importere OS -modulen for denne basename -metoden.
Parameteren bestått i Python basename:
Dette os.sti.Navn () Metode godtar bare den spesifiserte banestrengen som representerer en filsystemsti.
Returverdien i Python basename:
OS.sti.basename () vil returnere en verdi i strengen til en gitt bane som er basenavnet til filen. Nå vil vi ha et enkelt implementeringseksempel på hvordan dette operativsystemet.sti.Basename () -metode fungerer.
Eksempel 1:
I Windows og UNIX har vi forskjellige formater for å trekke ut basenavnet til en fil med den spesifiserte banen, så i dette eksemplet skal vi trekke ut basenavnet med syntaks og Unix syntaks. Til å begynne med har vi et vinduseksempel.
Vinduet bruker en backslash '\' separator; Vi kan sjekke eller bekrefte denne separatoren gjennom operativsystemet.sti.SEP () -metode. En variabel 'file_dir' har banen “brukere \ abc \ nedlastinger \ My Window” som er filkatalognavnet, og 'File_name' har en bane gitt 'brukere \ ABC \ nedlastinger \ My Window \ Index.html '. Begge variabelen returnerer et basenavn på filen med vindussyntaks. Vi vil også skrive ut vindusseparatoren via en metode OS.sti.Sep ()
Importer OS.stiKonsollskjermen viser utdatautskriften Filkatalognavnet, filbasenavn og separatorskilt.
Nå har vi en UNIX -separator brukt i dette eksemplet nedenfor. Unix bruker Slash '/' som baneseparator. Vi kan få denne separatoren ved å skrive ut OS.sti.SEP () -metode.
Importer OS.stiDette er utdataene fra ovennevnte kode, som vist nedenfor.
Eksempel 2:
La oss ha et eksempel på å trekke ut filnavnet via metoden OS.sti.basename (). Vi har importert OS.Sti for å få tilgang til OS.sti.Basename () -metode i akkurat dette eksemplet. Vi har 'basename' som vil returnere et filbasenavn som vi har tildelt i OS.sti.basename. Med trykket () uttalelsen vil vi ha et basenavn.
Importer OS.stiHer har vi “/Hjem/eksempel/” som et banenavn og “Eksempel på File.txt ”som et basenavn som vises som utgang nedenfor.
Eksempel 3:
I dette eksemplet finner vi basenavnet til katalogen eller mappenavnet. Mappenavnet eller katalogen har også et basenavn i den komplette banen. For dette eksemplet har vi 'dokumenter' som et basenavn fra banen '/Home/MyDocuments/Documents' som er bestått i OS.sti.basename (). En variabel 'basename' vil returnere en utgang som kalles i print () -funksjonen.
Importer OS.stiVi har fått 'dokumenter' som et basenavn fra ovennevnte kode. Utgangen vises i skjermbildet nedenfor.
Eksempel 4:
For å få et basenavn fra en URL må vi importere et bibliotek fra Urllib -standardpakkemodulen som er URLParse. Dette vil hjelpe oss å dele opp URL -strenger i komponenter eller kombinere URL -strengen igjen i komponenter.
Dette eksemplet vil få et URL -basenavn for å danne en variabel 'URL' som har streng URL 'https: // docs.Python.org/3/last ned.html '. URLen sendes i URLParse () -metoden som et argument som vil dele opp nettadressen i deler. Denne urlparse lagres i en ny variabel, 'x' som vil vise den delte banestrengen til nettadressen. Denne gangen tar vi OS.sti.basename () gjennom utskriftserklæring.
Importer OSViser den delte URL -strengen og basenavnet fra URLen som nedenfor:
Eksempel 5:
Dette eksemplet bruker en metode OS.sti.split () for å returnere et par 'hode' og 'hale' individuelt. For dette må vi passere en spesifisert bane som et argument i OS.sti.Split () -metode. Vi vil få et 'hode' og 'hale' separat gjennom en utskriftserklæring.
Importer OSDu kan se utdataene fra denne koden da den viser hodedelen og haledelen individuelt.
Eksempel 6:
Vi har trukket ut basenavnet og utvidelsen som er definert nå i dette eksemplet. Vi vil trekke ut filnavnet uten utvidelse ved hjelp av en annen metode OS.sti.splitext (). Denne metoden vil bare gi basenavnet som definert i OS.sti.basename ().
Vi har tildelt et banenavn som 'Hjem/eksempel/eksempel3.txt 'i en variabel' basename '. Bruk indeks som '0' for å få basename uten forlengelse.
Importer OS.stiVi har en basenameutgang som 'Eksempel3' uten utvidelse på konsollskjermen.
Konklusjon
Vi har gått gjennom alle mulige måter å få basename fra den spesifiserte banen i denne artikkelen. Vi har også demonstrert Get Basename i Windows og UNIX med de forskjellige separatorene. Nå forhåpentligvis vil denne funksjonen gi deg en sterk forståelse.