Programul Python pentru a obține numele fișierului din calea fișierului

Programul Python pentru a obține numele fișierului din calea fișierului

În acest articol, ne vom uita la programul pentru a obține numele fișierului din calea fișierului dată în limbajul de programare Python. Uneori, în timpul automatizării, este posibil să avem nevoie de numele fișierului extras din calea fișierului.

Mai bine să ai cunoștințe despre:

Metoda 1: Python OS-modul

Exemplu 1: Obțineți numele fișierului din calea fără extensia split()

Python’s Despică() funcția descompune textul dat într-o listă de șiruri folosind separatorul definit și returnează o listă de șiruri care au fost împărțite de separatorul furnizat.

Python3




import> os> path> => 'D:homeRiot GamesVALORANTliveVALORANT.exe'> print> (os.path.basename(path).split(> '/'> )[> -> 1> ])>

Ieșire:

VALORANT.exe 

Exemplul 2: Obțineți numele fișierului din calea fișierului folosind os.path.basename

Numele de bază din calea dată poate fi obținut folosind funcția Python încorporată os.path.basename(). Funcția path.basename() acceptă un argument cale și returnează numele de bază al căii de cale.

Python3




import> os> file_path> => 'C:/Users/test.txt'> # file path> # using basename function from os> # module to print file name> file_name> => os.path.basename(file_path)> print> (file_name)>

Ieșire:

test.txt 

Exemplul 3: Obțineți numele fișierului din calea fișierului folosind os. splitext

Această metodă va avea un fișier și este o extensie, dar dacă avem nevoie doar de numele fișierului fără extensie sau doar de extensii. Aici splitext funcția din modulul os intră în imagine. Această metodă va returna un tuplu de șiruri care conțin nume de fișier și text și le putem accesa cu ajutorul indexării.

Exemplu:

Python3




import> os> file_path> => 'C:/Users/test.txt'> file_name> => os.path.basename(file_path)> file> => os.path.splitext(file_name)> print> (> file> )> # returns tuple of string> print> (> file> [> 0> ]> +> file> [> 1> ])>

Ieșire:

('test', '.txt') test.txt 

Metoda 2: Obțineți numele fișierului din calea fișierului folosind Pathlib

Pachetul Python Pathlib oferă o serie de clase care descriu căile sistemului de fișiere cu o semantică potrivită pentru multe sisteme de operare. Modulele utilitare standard pentru Python includ acest modul. Cu toate că tulpina este unul dintre atributele de utilitate care permite extrageri ale numelui fișierului din link fără extensie dacă dorim o extensie cu fișierul putem folosi atribute de nume

Exemplu:

Python3




from> pathlib> import> Path> file_path> => 'C:/Users/test.txt'> # stem attribute extracts the file> # name> print> (Path(file_path).stem)> # name attribute returns full name> # of the file> print> (Path(file_path).name)>

Ieșire:

test test.txt 

Metoda 3: Obțineți numele fișierului din calea fișierului folosind Expresii obisnuite

Putem folosi o expresie regulată pentru a potrivi numele fișierului cu modelul specific.

 Pattern -  [w]+?(?=.) 

Acest model este împărțit în 3 modele

  • [w] se potrivește cu cuvintele din interiorul setului
  • +? se potrivește cu șirul dacă este prezent o singură dată înainte ? cuvânt cheie
  • (?=) se potrivește cu toate caracterele fără linie nouă și asigurați-vă că vă opriți la.

Exemplu:

Python3




import> re> file_path> => 'C:/Users/test.txt'> pattern> => '[w-]+?(?=.)'> # searching the pattern> a> => re.search(pattern, file_path)> # printing the match> print> (a.group())>

Ieșire:

test 

Metoda 4: Utilizați funcția Python încorporată split() pentru a împărți calea fișierului într-o listă de componente individuale, apoi utilizați metoda rsplit():

puteți folosi funcția Python încorporată split() pentru a împărți calea fișierului într-o listă de componente individuale, apoi utilizați metoda rsplit() pentru a împărți ultima componentă (care ar trebui să fie numele și extensia fișierului) într-o listă care conține numele și extensia fișierului. Puteți utiliza apoi indexarea pentru a extrage numele fișierului din această listă.

Iată un exemplu despre cum se poate face acest lucru:

Python3




def> get_file_name(file_path):> > file_path_components> => file_path.split(> '/'> )> > file_name_and_extension> => file_path_components[> -> 1> ].rsplit(> '.'> ,> 1> )> > return> file_name_and_extension[> 0> ]> # Example usage> file_path> => 'C:/Users/test.txt'> result> => get_file_name(file_path)> print> (result)> # Output: 'test'>

Ieșire: test

Această abordare folosește mai întâi funcția split() pentru a împărți calea fișierului într-o listă de componente individuale, separate prin caracterul „/”. Metoda rsplit() este apoi folosită pentru a împărți ultima componentă (care ar trebui să fie numele și extensia fișierului) într-o listă care conține numele și extensia fișierului, folosind caracterul „.” ca separator. Numele fișierului este apoi extras din această listă folosind indexare. Această abordare va funcționa pentru orice cale de fișier și extensie, atâta timp cât calea fișierului este într-un format care poate fi analizat folosind metodele split() și rsplit().