Os modulining scandir metodi
scandir metodi papkada joylashgan fayl va
pastki papkalarni takrorlaydi. Metod
parametrida papka yo'li belgilanadi. Metod
os.DirEntry ob'ektini qaytaradi.
Sintaksis
pythonimport os
os.scandir(papka yo'li)
Misol
Keling, papkamizning tuzilishini bilib olaylik:
pythonimport os
print(os.scandir('dir'))
Kod bajarilishi natijasida biz
os.DirEntry ob'ektini olamiz:
python<nt.ScandirIterator object at 0x000001478707FF00>
Misol
Endi keling, olingan ob'ektni sikl bilan takrorlaymiz.
Tizim resurslarini bo'shatish uchun, sikl tugagach,
scandir metodi yordamida takrorlashni yopish
kerak:
pythonimport os
for file in os.scandir('dir'):
print(file)
os.scandir('dir').close()
Bajarilgan kod natijasi:
python<DirEntry 'dir1'>
<DirEntry 'file1.txt'>
<DirEntry 'file2.txt'>
Misol
Shuningdek, biz faqat fayl nomlarini chiqarishimiz mumkin,
buning uchun olingan ob'ektga name atributini qo'llaymiz:
pythonimport os
for file in os.scandir('dir'):
print(file.name)
os.scandir('dir').close()
Bajarilgan kod natijasi:
pythondir1
file1.txt
file2.txt
Shuningdek qarang
-
DirEntryob'ektiosmodulidan,
u takrorlanadigan fayl va pastki papkalarni o'z ichiga oladi -
getcwdmetodiosmodulidan,
u joriy ishchi katalogni qaytaradi -
makedirsmetodiosmodulidan,
u papka yaratadi -
rmtreemetodishutilmodulidan,
u papkani rekursiv o'chiradi -
copytreemetodishutilmodulidan,
u papkani rekursiv nusxalaydi -
path.joinmetodiosmodulidan,
u yo'llarni birlashtiradi