Metod scandir modula os

Metod scandir pretražuje fajlove i podfoldere koji se nalaze u folderu. U parametru metoda zadajemo putanju do foldera. Metod vraća objekat os.DirEntry.

Sintaksa

pythonimport os

os.scandir(putanja do direktorijuma)

Primer

Hajde da saznamo strukturu našeg direktorijuma:

pythonimport os

print(os.scandir('dir'))

Kao rezultat izvršavanja koda dobićemo objekat os.DirEntry:

python<nt.ScandirIterator object at 0x000001478707FF00>

Primer

Sada hajde da prođemo kroz dobijeni objekat pomoću petlje. Da bismo oslobodili resurse sistema, nakon završetka petlje, potrebno je zatvoriti pretragu pomoću metoda scandir:

pythonimport os

for file in os.scandir('dir'):
  print(file)
  
  os.scandir('dir').close()

Rezultat izvršenog koda:

python<DirEntry 'dir1'>
<DirEntry 'file1.txt'>
<DirEntry 'file2.txt'>

Primer

Takođe možemo da prikažemo samo imena fajlova, primenom atributa name na dobijeni objekat:

pythonimport os

for file in os.scandir('dir'):
  print(file.name)
  
  os.scandir('dir').close()

Rezultat izvršenog koda:

pythondir1
file1.txt
file2.txt

Vidite takođe

  • objekat DirEntry modula os,
    koji sadrži iterabilne fajlove i podfoldere
  • metod getcwd modula os,
    koji vraća trenutni radni direktorijum
  • metod makedirs modula os,
    koji kreira direktorijum
  • metod rmtree modula shutil,
    koji rekurzivno briše folder
  • metod copytree modula shutil,
    koji rekurzivno kopira folder
  • metod path.join modula os,
    koji spaja putanje