background image

διαγραφούν)   ,   και   ‘a’   ανοίγει   το   αρχείο   για   επισύναψη, 
οποιαδήποτε   στοιχεία   που   γράφονται   στο   αρχείο   προστίθεται 
αυτόματα στο τέλος. Το ‘r+’ ανοίγει το αρχείο τόσο για την 
ανάγνωση   όσο   και   για   γραφή   ως   ορίσμα   σε   μιας   συνάρτησης 
είναι προαιρετικό. Το ‘r’ μπορεί να παραλείπεται.

Τα   αρχεία   ανοίγουν   σε   μορφή   κειμένου.   Αυτό   σημαίνει, 

ότι μπορείτε να διαβάσετε και να γράψετε αλφαριθμητικά από 
και προς το αρχείο , τα οποία είναι κωδικοποιημένα σε μια 
συγκεκριμένη κωδικοποίηση (η προεπιλογή είναι UTF-8). Το ’b’ 
που   επισυνάπτεται   στη   λειτουργία   ανοίγει   το   αρχείο   σε 
δυαδική   κατάσταση:   τώρα   τα   δεδομένα   διαβάζονται   και   να 
γράφονται με τη μορφή bytes. Αυτή η λειτουργία θα πρέπει να 
χρησιμοποιείται   για   όλα   τα   αρχεία   που   δεν   περιέχουν 
κείμενο .

Σε λειτουργία κειμένου, η προεπιλογή κατά την ανάγνωση 

είναι να μετατρέψει την πλατφόρμα ώστε να έχει συγκεκριμένες 
καταλήξεις γραμμών (\n για Unix , \r\n στα Windows). Όταν 
γράφετε σε μορφή κειμένου , η προεπιλογή είναι να μετατρέψει 
τις εμφανίσεις του \n πίσω στην πλατφόρμα σε συγκεκριμένες 
καταλήξεις   γραμμής.   Να   είστε   πολύ   προσεκτικοί   για   να 
χρησιμοποιήσετε δυαδική κατάσταση κατά την ανάγνωση και τη 
γραφή των αρχεία σας.

Για   τα   παρακάτω   παραδείγματα,   θα   υποθέσουμε   ότι   ένα 

αντικείμενο που ονομάζεται αρχείο f έχει ήδη δημιουργηθεί. 

Για να διαβάσετε το περιεχόμενο ενός αρχείου, καλέστε 

f.read   (sizeς),   η   οποία   διαβάζει   κάποια   ποσότητα   των 
δεδομένων και τα επιστρέφει ως ένα string ή ένα αντικείμενο 
σε   bytes.   το   μέγεθος   είναι   ένας   προαιρετικός   αριθμός 
παραμέτρων. Όταν το μέγεθος παραλείπεται ή είναι αρνητική, 
όλο το περιεχόμενο του αρχείου θα πρέπει να διαβαστεί και να 
επιστραφεί. Αυτό είναι το πρόβλημά σας, εάν το αρχείο είναι 
διπλάσιο   σε   μέγεθος   από   τη   μνήμη   του   μηχανήματός   σας.   Σε 
αντίθετη περίπτωση, τα bytes διαβάζονται και επιστρέφονται. 
Αν   το   τέλος   του   αρχείου   έχει   επιτευχθεί,   f.read()   θα 
επιστρέψει μια κενή συμβολοσειρά ('').

http://arch.icte.uowm.gr

 - A Mini greek notebook for Learning Python Programming 

55