logo

Programma Python per ottenere il nome del file dal percorso del file

In questo articolo esamineremo il programma per ottenere il nome del file dal percorso file indicato nel linguaggio di programmazione Python. A volte durante l'automazione, potremmo aver bisogno del nome del file estratto dal percorso del file.

Meglio avere conoscenza di:

Metodo 1: Modulo del sistema operativo Python

Esempio 1: ottieni il nome del file dal percorso senza estensione split()

Di Python diviso() La funzione suddivide il testo specificato in un elenco di stringhe utilizzando il separatore definito e restituisce un elenco di stringhe che sono state divise dal separatore fornito.



Python3




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

>

>

Produzione:

VALORANT.exe>

Esempio 2: Ottieni il nome del file dal percorso del file utilizzando os.path.basename

Il nome di base nel percorso specificato può essere ottenuto utilizzando la funzione Python incorporata os.path.basename(). La funzione path.basename() accetta un argomento di percorso e restituisce il nome base del percorso.

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)>

>

>

Produzione:

test.txt>

Esempio 3: ottenere il nome del file dal percorso del file utilizzando os. testo diviso

Questo metodo finirà con un file ed è un'estensione, ma cosa succede se abbiamo bisogno solo del nome del file senza estensione o solo delle estensioni. Qui testo diviso entra in gioco la funzione nel modulo del sistema operativo. Questo metodo restituirà una tupla di stringhe contenenti nome file e testo e potremo accedervi con l'aiuto dell'indicizzazione.

Esempio:

Python3


espressione regolare in Java



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>])>

>

>

Produzione:

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

Metodo 2: Ottieni il nome del file dal percorso del file utilizzando Pathlib

Il pacchetto Python Pathlib offre una serie di classi che descrivono percorsi di file system con semantica adatta a molti sistemi operativi. I moduli di utilità standard per Python includono questo modulo. Sebbene stelo è uno degli attributi di utilità che abilita l'estrazione del nome file dal collegamento senza estensione se vogliamo un'estensione con il file possiamo usare gli attributi nome

Esempio:

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)>

>

>

Produzione:

test test.txt>

Metodo 3: Ottieni il nome del file dal percorso del file utilizzando Espressioni regolari

Possiamo usare un'espressione regolare per abbinare il nome del file al modello specifico.

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

Questo modello è diviso in 3 modelli

come accedere alle foto di icloud
  • [w] corrisponde alle parole all'interno del set
  • +? corrisponde alla stringa se è presente solo una volta prima ? parola chiave
  • (?=) corrisponde a tutti i caratteri senza fine riga e assicurati di fermarti a.

Esempio:

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())>

>

>

Produzione:

test>

Metodo 4: utilizzare la funzione integrata Python split() per dividere il percorso del file in un elenco di singoli componenti, quindi utilizzare il metodo rsplit():

puoi utilizzare la funzione integrata Python split() per dividere il percorso del file in un elenco di singoli componenti, quindi utilizzare il metodo rsplit() per dividere l'ultimo componente (che dovrebbe essere il nome del file e l'estensione) in un elenco contenente il nome e l'estensione del file. È quindi possibile utilizzare l'indicizzazione per estrarre il nome del file da questo elenco.

Ecco un esempio di come è possibile farlo:

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'>

>

>

Uscita: prova

Questo approccio utilizza innanzitutto la funzione split() per dividere il percorso del file in un elenco di singoli componenti, separati dal carattere '/'. Il metodo rsplit() viene quindi utilizzato per dividere l'ultimo componente (che dovrebbe essere il nome del file e l'estensione) in un elenco contenente il nome del file e l'estensione, utilizzando il carattere '.' come separatore. Il nome del file viene quindi estratto da questo elenco utilizzando l'indicizzazione. Questo approccio funzionerà per qualsiasi percorso ed estensione di file, purché il percorso del file sia in un formato che possa essere analizzato utilizzando i metodi split() e rsplit().