Η μέθοδος scandir της μονάδας os
Η μέθοδος scandir επαναλαμβάνει τα αρχεία και
τους υποφακέλους που βρίσκονται σε έναν φάκελο. Στην
παράμετρο της μεθόδου ορίζουμε τη διαδρομή προς το φάκελο. Η μέθοδος
επιστρέφει ένα αντικείμενο os.DirEntry.
Σύνταξη
import os
os.scandir(διαδρομή προς τον κατάλογο)
Παράδειγμα
Ας μάθουμε τη δομή του καταλόγου μας:
import os
print(os.scandir('dir'))
Ως αποτέλεσμα της εκτέλεσης του κώδικα θα λάβουμε
ένα αντικείμενο os.DirEntry:
<nt.ScandirIterator object at 0x000001478707FF00>
Παράδειγμα
Τώρα ας επαναλάβουμε το αντικείμενο που λάβαμε
με έναν βρόγχο. Για να απελευθερώσουμε τους πόρους
του συστήματος, μετά το τέλος του βρόγχου, είναι απαραίτητο
να κλείσουμε την επανάληψη χρησιμοποιώντας τη μέθοδο scandir:
import os
for file in os.scandir('dir'):
print(file)
os.scandir('dir').close()
Αποτέλεσμα του εκτελεσμένου κώδικα:
<DirEntry 'dir1'>
<DirEntry 'file1.txt'>
<DirEntry 'file2.txt'>
Παράδειγμα
Μπορούμε επίσης να εμφανίσουμε μόνο τα ονόματα των αρχείων,
εφαρμόζοντας στο αντικείμενο που λάβαμε το χαρακτηριστικό name:
import os
for file in os.scandir('dir'):
print(file.name)
os.scandir('dir').close()
Αποτέλεσμα του εκτελεσμένου κώδικα:
dir1
file1.txt
file2.txt
Δείτε επίσης
-
το αντικείμενο
DirEntryτης μονάδαςos,
που περιέχει επαναληπτικά αρχεία και υποφακέλους -
η μέθοδος
getcwdτης μονάδαςos,
που επιστρέφει τον τρέχοντα φάκελο εργασίας -
η μέθοδος
makedirsτης μονάδαςos,
που δημιουργεί κατάλογο -
η μέθοδος
rmtreeτης μονάδαςshutil,
που διαγράφει αναδρομικά έναν φάκελο -
η μέθοδος
copytreeτης μονάδαςshutil,
που αντιγράφει αναδρομικά έναν φάκελο -
η μέθοδος
path.joinτης μονάδαςos,
που συνδυάζει διαδρομές