Δημοσιεύτηκε: 27 Σεπ 2011, 01:43
από pmav99
Δεν κατάλαβα τι ακριβώς θέλεις να κάνεις. Αν δε σου κάνει αυτό που έγραψε ο Ηλίας, γίνε λίγο πιο αναλυτικός.

Γιατί δουλεύεις κατευθείαν με αρχεία? Θα είναι πολύ πιο αποδοτικό να δουλεύεις με αντικείμενα και όταν τερματίζεται το πρόγραμμα να αποθηκεύονται στο δίσκο. Δηλαδή η crypt_list να είναι μια list στην οποία θα προσθέτεις ή θα αφαιρείς entries και θα έχεις δύο άλλες συναρτήσεις για να αποθηκεύεις στο δίσκο ή να διαβάζεις από αυτόν. Επίσης, έχω την αίσθηση ότι ένα dictionary θα σε εξυπηρετήσει καλύτερα (Ο(1) αναζήτηση, απαγορεύονται τα διπλα entries κτλ).

Από εκεί και περα. Τα αρχεία κειμένου σου επιτρέπουν να αποθηκεύσεις μόνο strings. Τα pickle σου επιτρέπουν να αποθηκεύσεις αντικείμενα. Πχ ένα dictionary, μία list ή ακόμα και μία instance μιας κλάσης.

Αν στο πρόγραμμα σου έχεις σύνθετες δομές δεδομένων τότε το pickle είναι γενικά καλύτερο γιατί δε χρειάζεται να χάσεις χρόνο με το να μετατρέπεις τα δεδομένα σε format που γράφεται και σε format που διαβάζεται αντίστοιχα.