Η μέθοδος scandir της μονάδας os

Η μέθοδος scandir επαναλαμβάνει τα αρχεία και τους υποφακέλους που βρίσκονται σε έναν φάκελο. Στην παράμετρο της μεθόδου ορίζουμε τη διαδρομή προς το φάκελο. Η μέθοδος επιστρέφει ένα αντικείμενο os.DirEntry.

Σύνταξη

pythonimport os

os.scandir(διαδρομή προς τον κατάλογο)

Παράδειγμα

Ας μάθουμε τη δομή του καταλόγου μας:

pythonimport os

print(os.scandir('dir'))

Ως αποτέλεσμα της εκτέλεσης του κώδικα θα λάβουμε ένα αντικείμενο os.DirEntry:

python<nt.ScandirIterator object at 0x000001478707FF00>

Παράδειγμα

Τώρα ας επαναλάβουμε το αντικείμενο που λάβαμε με έναν βρόγχο. Για να απελευθερώσουμε τους πόρους του συστήματος, μετά το τέλος του βρόγχου, είναι απαραίτητο να κλείσουμε την επανάληψη χρησιμοποιώντας τη μέθοδο scandir:

pythonimport os

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

Αποτέλεσμα του εκτελεσμένου κώδικα:

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

Παράδειγμα

Μπορούμε επίσης να εμφανίσουμε μόνο τα ονόματα των αρχείων, εφαρμόζοντας στο αντικείμενο που λάβαμε το χαρακτηριστικό name:

pythonimport os

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

Αποτέλεσμα του εκτελεσμένου κώδικα:

pythondir1
file1.txt
file2.txt

Δείτε επίσης

  • το αντικείμενο DirEntry της μονάδας os,
    που περιέχει επαναληπτικά αρχεία και υποφακέλους
  • η μέθοδος getcwd της μονάδας os,
    που επιστρέφει τον τρέχοντα φάκελο εργασίας
  • η μέθοδος makedirs της μονάδας os,
    που δημιουργεί κατάλογο
  • η μέθοδος rmtree της μονάδας shutil,
    που διαγράφει αναδρομικά έναν φάκελο
  • η μέθοδος copytree της μονάδας shutil,
    που αντιγράφει αναδρομικά έναν φάκελο
  • η μέθοδος path.join της μονάδας os,
    που συνδυάζει διαδρομές