Κατάλογος Python και διαχείριση αρχείων

Σε αυτό το σεμινάριο, θα μάθετε για τη διαχείριση αρχείων και καταλόγων στο Python, δηλαδή τη δημιουργία ενός καταλόγου, τη μετονομασία του, την καταχώριση όλων των καταλόγων και τη συνεργασία τους.

Βίντεο: Ενότητα Python os

Κατάλογος Python

Εάν υπάρχει μεγάλος αριθμός αρχείων για χειρισμό στο πρόγραμμα Python, μπορούμε να τακτοποιήσουμε τον κώδικά μας σε διαφορετικούς καταλόγους για να κάνουμε τα πράγματα πιο εύχρηστα.

Ένας κατάλογος ή φάκελος είναι μια συλλογή αρχείων και υποκαταλόγων. Η Python διαθέτει τη osλειτουργική μονάδα που μας παρέχει πολλές χρήσιμες μεθόδους εργασίας με καταλόγους (και αρχεία).

Αποκτήστε τον τρέχοντα κατάλογο

Μπορούμε να πάρουμε τον τρέχοντα κατάλογο εργασίας χρησιμοποιώντας τη getcwd()μέθοδο της osενότητας.

Αυτή η μέθοδος επιστρέφει τον τρέχοντα κατάλογο εργασίας με τη μορφή συμβολοσειράς. Μπορούμε επίσης να χρησιμοποιήσουμε τη getcwdb()μέθοδο για να το πάρουμε ως αντικείμενο bytes.

 >>> import os >>> os.getcwd() 'C:\Program Files\PyScripter' >>> os.getcwdb() b'C:\Program Files\PyScripter'

Η επιπλέον ανάστροφη κάθετο σημαίνει μια ακολουθία διαφυγής. Η print()συνάρτηση θα το καταστήσει σωστά.

 >>> print(os.getcwd()) C:Program FilesPyScripter

Αλλαγή καταλόγου

Μπορούμε να αλλάξουμε τον τρέχοντα κατάλογο εργασίας χρησιμοποιώντας τη chdir()μέθοδο.

Η νέα διαδρομή στην οποία θέλουμε να αλλάξουμε πρέπει να παρέχεται ως συμβολοσειρά σε αυτήν τη μέθοδο. Μπορούμε να χρησιμοποιήσουμε τόσο την μπροστινή όσο /και την πίσω-κάθετο για να διαχωρίσουμε τα στοιχεία διαδρομής.

Είναι ασφαλέστερο να χρησιμοποιείτε μια ακολουθία διαφυγής όταν χρησιμοποιείτε την κάθετη.

 >>> os.chdir('C:\Python33') >>> print(os.getcwd()) C:Python33

Λίστα καταλόγων και αρχείων

Όλα τα αρχεία και οι υποκατάλογοι μέσα σε έναν κατάλογο μπορούν να ανακτηθούν χρησιμοποιώντας τη listdir()μέθοδο.

Αυτή η μέθοδος λαμβάνει μια διαδρομή και επιστρέφει μια λίστα υποκαταλόγων και αρχείων σε αυτήν τη διαδρομή. Εάν δεν έχει καθοριστεί διαδρομή, επιστρέφει τη λίστα των υποκαταλόγων και των αρχείων από τον τρέχοντα κατάλογο εργασίας.

 >>> print(os.getcwd()) C:Python33 >>> os.listdir() ('DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'NEWS.txt', 'python.exe', 'pythonw.exe', 'README.txt', 'Scripts', 'tcl', 'Tools') >>> os.listdir('G:\') ('$RECYCLE.BIN', 'Movies', 'Music', 'Photos', 'Series', 'System Volume Information')

Δημιουργία νέου καταλόγου

Μπορούμε να δημιουργήσουμε έναν νέο κατάλογο χρησιμοποιώντας τη mkdir()μέθοδο.

Αυτή η μέθοδος ακολουθεί τη διαδρομή του νέου καταλόγου. Εάν δεν έχει καθοριστεί η πλήρης διαδρομή, ο νέος κατάλογος δημιουργείται στον τρέχοντα κατάλογο εργασίας.

 >>> os.mkdir('test') >>> os.listdir() ('test')

Μετονομασία καταλόγου ή αρχείου

Η rename()μέθοδος μπορεί να μετονομάσει έναν κατάλογο ή ένα αρχείο.

Για μετονομασία οποιουδήποτε καταλόγου ή αρχείου, η rename()μέθοδος λαμβάνει δύο βασικά ορίσματα: το παλιό όνομα ως πρώτο όρισμα και το νέο όνομα ως δεύτερο όρισμα.

 >>> os.listdir() ('test') >>> os.rename('test','new_one') >>> os.listdir() ('new_one')

Κατάργηση καταλόγου ή αρχείου

Ένα αρχείο μπορεί να αφαιρεθεί (διαγραφεί) χρησιμοποιώντας τη remove()μέθοδο.

Ομοίως, η rmdir()μέθοδος καταργεί έναν κενό κατάλογο.

 >>> os.listdir() ('new_one', 'old.txt') >>> os.remove('old.txt') >>> os.listdir() ('new_one') >>> os.rmdir('new_one') >>> os.listdir() ()

Σημείωση : Η rmdir()μέθοδος μπορεί να αφαιρέσει μόνο άδειους καταλόγους.

Για να καταργήσουμε έναν μη κενό κατάλογο, μπορούμε να χρησιμοποιήσουμε τη rmtree()μέθοδο μέσα στην shutilενότητα.

 >>> os.listdir() ('test') >>> os.rmdir('test') Traceback (most recent call last):… OSError: (WinError 145) The directory is not empty: 'test' >>> import shutil >>> shutil.rmtree('test') >>> os.listdir() ()

ενδιαφέροντα άρθρα...