Η εργασία με CSV-αρχεία (Comma-Separated Values) είναι μια συχνή εργασία στον προγραμματισμό που εμφανίζεται σε πολλές πρακτικές εφαρμογές. Είτε ανακτάς δεδομένα από APIs είτε διαχειρίζεσαι τα αποθέματα — η δυνατότητα να διαβάζεις και να γράφεις CSV-αρχεία είναι αναπόσπαστη. Σε αυτόν τον οδηγό θα μάθεις πώς να επεξεργάζεσαι αποτελεσματικά CSV-αρχεία με Python. Θα εξετάσουμε τη δημιουργία CSV-αρχειων, την ανάγνωση δεδομένων καθώς και την επεξεργασία αυτών των δεδομένων.
Σημαντικότερα ευρήματα
- Επισκόπηση μονάδας: Η Python παρέχει μια ενσωματωμένη μονάδα CSV που παρέχει CSV-Reader και Writer.
- Δομή δεδομένων: Μπορείς να χρησιμοποιήσεις τόσο λίστες όσο και λεξικά για να αποθηκεύσεις και να επεξεργαστείς δεδομένα.
- Αποτελεσματική διαχείριση E/A: Χρησιμοποίησε το with open(...) για τη διαχείριση πρόσβασης αρχείων, ώστε να μην χρειάζεται να ανησυχείς για το κλείσιμο των αρχείων.
Βήμα-βήμα οδηγός
Δημιουργία καταλόγου και δημιουργία CSV-αρχείου
Στην αρχή, δημιουργείς έναν κενό κατάλογο. Σε αυτόν τον κατάλογο θα πρέπει να δημιουργήσεις ένα αρχείο με το όνομα csvdateien.py. Αυτό το αρχείο θα είναι το κύριο σενάριο σου για εργασία με CSV-αρχεία.

Μέσα στο αρχείο Python σου, μπορείς να δημιουργήσεις το CSV-αρχείο χρησιμοποιώντας το όνομα produkte.csv. Σε αυτό το αρχείο θα καθορίσεις τις στήλες με τις επικεφαλίδες Produkt ID, Name, Preis και Lagerbestand.

Το CSV-αρχείο θα μπορούσε να φαίνεται έτσι:
Produkt ID,Name,Preis,Lagerbestand 1,iPad,399,50 2,Nerfgun,29.99,100
Ανάγνωση CSV-αρχείου
Για να διαβάσεις δεδομένα από το produkte.csv αρχείο, χρειάζεσαι τη μονάδα CSV. Η μονάδα αυτή σου επιτρέπει να επεξεργάζεσαι τα δεδομένα CSV αποτελεσματικά. Μπορείς να μετατρέψεις τα δεδομένα σε ένα αναγνώσιμο μορφότυπο χρησιμοποιώντας το with open(...). Αυτό αποφεύγει το χειροκίνητο κλείσιμο των αντικειμένων αρχείων και καθαρίζει και ασφαλίζει τον κώδικά σου.
Στο επόμενο βήμα, θα δημιουργήσεις έναν CSV-Reader. Αυτό θα σου επιτρέψει να διατρέξεις το αρχείο γραμμή-γραμμή και να εξάγεις τα δεδομένα:
with open('produkte.csv', newline='', encoding='utf-8') as csvfile: csvreader = csv.reader(csvfile) for row in csvreader: print(row)

Αυτό θα διαβάσει κάθε γραμμή ως λίστα, κάτι που δείχνει ότι τα δεδομένα είναι δομημένα όπως αναμενόταν. Κάθε γραμμή αντιστοιχεί σε ένα προϊόν και περιέχει πληροφορίες για ID, Name, Preis και Lagerbestand.
Χρήση λεξικών για πιο διαισθητική επεξεργασία δεδομένων
Για να διαχειριστείς τα δεδομένα πιο απλά και διαισθητικά, θα πρέπει να χρησιμοποιήσεις τη μορφή λεξικού. Με έναν Dictionary-Reader, μπορείς να διευκολύνεις την πρόσβαση στα δεδομένα σου μέσω των ονομάτων των πεδίων.

Εδώ χρειάζεσαι επίσης το with open(...), για να ανοίξεις το αρχείο και να δημιουργήσεις τον CSV-Reader. Φρόντισε να δηλώσεις μια λίστα πεδίων που θέλεις να διαβάσεις:

Τώρα μπορείς να αποκτήσεις εύκολα πρόσβαση στα πεδία μέσω των ονομάτων τους. Αυτό καθιστά την επεξεργασία σου πολύ πιο προσιτή.
Γράψιμο σε CSV-αρχείο
Για να γράψεις δικά σου δεδομένα σε ένα CSV-αρχείο, μπορείς να χρησιμοποιήσεις ένα αντικείμενο Dictionary-Writer. Έχεις τη δυνατότητα να δημιουργήσεις μια λίστα λεξικών που αναπαριστούν τα δεδομένα σου.

Εδώ είναι ένα απλό παράδειγμα για το πώς να αποθηκεύσεις μια λίστα υπερηρώων ως CSV-αρχείο:
with open('superhelden.csv', 'w', newline='') as csvfile: fieldnames = ['Name', 'Alias'] writer = csv.DictWriter(csvfile, fieldnames=fieldnames)

Το αρχείο superhelden.csv δημιουργείται τώρα και περιέχει τα δεδομένα των υπερηρώων σε μια καλά δομημένη και αναγνώσιμη μορφή.
Συμπέρασμα και πρακτική εφαρμογή
Τα CSV-αρχεία είναι ένα πολύτιμο εργαλείο για την ανταλλαγή δεδομένων που συχνά χρειάζεται στην πρακτική. Αυτός ο οδηγός σου παρέχει τις βασικές γνώσεις για την επεξεργασία CSV-αρχείων με την Python. Έχεις μάθει πώς να διαβάζεις δεδομένα από CSV-αρχεία, να τα επεξεργάζεσαι στην Python και να γράφεις τα δικά σου δεδομένα στη μορφή CSV.
Σύνοψη – Επεξεργασία CSV-αρχείων με Python
Τα CSV-αρχεία είναι μια σημαντική μορφή για την ανταλλαγή δεδομένων σε πολλές εφαρμογές. Με την Python μπορείς να εργάζεσαι με αυτά τα αρχεία αποτελεσματικά και εύκολα. Αφού κατανοήσεις τις βασικές γνώσεις, μπορείς εύκολα να εφαρμόσεις αυτές τις τεχνικές σε πιο σύνθετες εφαρμογές δεδομένων.
Συχνές ερωτήσεις
Πώς ανοίγω ένα CSV-αρχείο στην Python;Μπορείς να ανοίξεις ένα CSV-αρχείο στην Python με τη χρήση του with open('dateiname.csv', 'r'):.
Πώς μπορώ να γράψω δεδομένα σε ένα CSV-αρχείο;Για αυτό χρησιμοποιείς το αντικείμενο csv.writer ή csv.DictWriter για να μορφοποιήσεις τα δεδομένα και να τα γράψεις στο αρχείο.
Ποια είναι η διαφορά μεταξύ csv.reader και csv.DictReader;Ο csv.reader διαβάζει τα δεδομένα ως λίστες, ενώ ο csv.DictReader εξάγει τα δεδομένα ως λεξικά με τα ονόματα των πεδίων ως κλειδιά.
Πώς μπορώ να καθορίσω την επικεφαλίδα σε ένα CSV-αρχείο;Η επικεφαλίδα μπορεί να καθοριστεί με τη writeheader() κατά την εγγραφή ενός CSV-αρχείου μέσω του Writer.
Πώς διαβάζω ένα CSV-αρχείο με προσαρμοσμένα ονόματα πεδίων;Περίγραψε μια λίστα των επιθυμητών ονομάτων πεδίων κατά τη δημιουργία ενός csv.DictReader.