Come scorrere i file nella directory usando Python?

Come scorrere i file nella directory usando Python?

Direttorio talvolta note anche come cartelle, sono strutture organizzative di unità nel file system di un sistema per l'archiviazione e l'individuazione di file o più cartelle. Python come linguaggio di scripting fornisce vari metodi per scorrere i file in una directory.

Di seguito sono riportati i vari approcci che consentono di eseguire l'iterazione sui file in una directory utilizzando Python:

Metodo 1: os.listdir()

Questa funzione restituisce l'elenco di File E sottodirectory presente nella directory specificata. Possiamo filtrare l'elenco per ottenere solo i file utilizzando os.percorso.isfile() funzione:

Esempio:

Python3




# import required module> import> os> # assign directory> directory> => 'files'> # iterate over files in> # that directory> for> filename> in> os.listdir(directory):> > f> => os.path.join(directory, filename)> > # checking if it is a file> > if> os.path.isfile(f):> > print> (f)>

Produzione:

Metodo 2: os.scandir()

Questo metodo viene utilizzato per ottenere un iteratore di os.DirEntry oggetti corrispondenti alle voci nella directory fornite dal percorso specificato.

Esempio:

Python3




# import required module> import> os> # assign directory> directory> => 'files'> # iterate over files in> # that directory> for> filename> in> os.scandir(directory):> > if> filename.is_file():> > print> (filename.path)>

Produzione:

Metodo 3: modulo pathlib

Possiamo scorrere i file in una directory utilizzando Percorso.glob() funzione che inserisce il modello specificato nella directory specificata e produce i file corrispondenti. Percorso.glob('*') produrre tutti i file nella directory specificata

Esempio:

Python3




# import required module> from> pathlib> import> Path> # assign directory> directory> => 'files'> # iterate over files in> # that directory> files> => Path(directory).glob(> '*'> )> for> file> in> files:> > print> (> file> )>

Produzione:

Metodo 4: os.walk()

Possiamo anche cercare sottodirectory utilizzando questo metodo poiché produce una tupla di 3 tuple (dirpath, nomi dir, nomi di file) .

  • radice : stampa le directory solo da quelle specificate.
  • Dire : Stampa le sottodirectory dalla radice.
  • File : Stampa tutti i file dalla root e dalle directory.

Python3




# import required module> import> os> # assign directory> directory> => 'files'> # iterate over files in> # that directory> for> root, dirs, files> in> os.walk(directory):> > for> filename> in> files:> > print> (os.path.join(root, filename))>

Produzione:

Metodo 5: modulo glob

IL glob.iglob() la funzione restituisce un iteratore sull'elenco dei nomi di percorso che corrispondono al modello specificato.

Esempio:

Python3




# import required module> import> glob> # assign directory> directory> => 'files'> # iterate over files in> # that directory> for> filename> in> glob.iglob(f> '{directory}/*'> ):> > print> (filename)>

Produzione: