Az os modul scandir metódusa
A scandir metódus bejárja a mappában található fájlokat és
almappákat. A metódus paraméterében a mappa elérési útját adjuk meg. A metódus
visszaad egy os.DirEntry objektumot.
Szintaxis
import os
os.scandir(útvonal a könyvtárhoz)
Példa
Nézzük meg a könyvtárstruktúránkat:
import os
print(os.scandir('dir'))
A kód végrehajtásának eredményeképpen egy
os.DirEntry objektumot kapunk:
<nt.ScandirIterator object at 0x000001478707FF00>
Példa
Most járjuk be a kapott objektumot egy ciklussal.
Annak érdekében, hogy a rendszererőforrásokat felszabadítsuk
a ciklus befejezése után, szükséges
leállítani a bejárást a scandir metódus close metódusával:
import os
for file in os.scandir('dir'):
print(file)
os.scandir('dir').close()
A végrehajtott kód eredménye:
<DirEntry 'dir1'>
<DirEntry 'file1.txt'>
<DirEntry 'file2.txt'>
Példa
Csak a fájlneveket is kiírhatjuk,
ha a kapott objektumra alkalmazzuk a name attribútumot:
import os
for file in os.scandir('dir'):
print(file.name)
os.scandir('dir').close()
A végrehajtott kód eredménye:
dir1
file1.txt
file2.txt
Lásd még
-
a
DirEntryobjektum azosmodulból,
amely a bejárható fájlokat és almappákat tartalmazza -
a
getcwdmetódus azosmodulból,
amely visszaadja az aktuális munkakönyvtárat -
a
makedirsmetódus azosmodulból,
amely létrehoz egy könyvtárat -
a
rmtreemetódus ashutilmodulból,
amely rekurzívan töröl egy mappát -
a
copytreemetódus ashutilmodulból,
amely rekurzívan másol egy mappát -
a
path.joinmetódus azosmodulból,
amely útvonalakat egyesít