Metoda scandir modula os
Metoda scandir iterira prek datotek in
podmap, ki se nahajajo v mapi. V
parametru metode nastavimo pot do mape. Metoda
vrne objekt os.DirEntry.
Sintaksa
import os
os.scandir(pot do direktorija)
Primer
Ugotovimo strukturo našega direktorija:
import os
print(os.scandir('dir'))
Kot rezultat izvajanja kode bomo dobili
objekt os.DirEntry:
<nt.ScandirIterator object at 0x000001478707FF00>
Primer
Sedaj iterirajmo prek dobljenega objekta
z zanko. Da bi sprostili sistemske vire
po končani zanki, je potrebno
zapreti iterator s pomočjo metode scandir:
import os
for file in os.scandir('dir'):
print(file)
os.scandir('dir').close()
Rezultat izvedbe kode:
<DirEntry 'dir1'>
<DirEntry 'file1.txt'>
<DirEntry 'file2.txt'>
Primer
Prav tako lahko izpišemo samo imena datotek,
z uporabo atributa name na dobljenem objektu:
import os
for file in os.scandir('dir'):
print(file.name)
os.scandir('dir').close()
Rezultat izvedbe kode:
dir1
file1.txt
file2.txt
Glejte tudi
-
objekt
DirEntrymodulaos,
ki vsebuje iterabilne datoteke in podmap -
metoda
getcwdmodulaos,
ki vrne trenutni delovni imenik -
metoda
makedirsmodulaos,
ki ustvari imenik -
metoda
rmtreemodulashutil,
ki rekurzivno odstrani mapo -
metoda
copytreemodulashutil,
ki rekurzivno kopira mapo -
metoda
path.joinmodulaos,
ki združi poti