Περισσότερα
Εγγραφή μιας λίστας σε ένα αρχείο με την Python
Είναι αυτός ο καθαρότερος τρόπος για να γράψετε μια λίστα σε ένα αρχείο, αφού η writelines()
δεν εισάγει χαρακτήρες νέας γραμμής;
file.writelines(["%s\n" % item for item in list])
Φαίνεται ότι θα υπήρχε ένας τυπικός τρόπος...
593
3
Μπορείτε να χρησιμοποιήσετε έναν βρόχο:
Στην Python 2, μπορείτε επίσης να χρησιμοποιήσετε
Αν είστε πρόθυμοι για μια απλή κλήση συνάρτησης, τουλάχιστον αφαιρέστε τις αγκύλες
[]
, έτσι ώστε οι συμβολοσειρές που θα εκτυπωθούν να δημιουργηθούν μία μία (ένα genexp αντί για ένα listcomp) -- δεν υπάρχει λόγος να καταλαμβάνετε όλη τη μνήμη που απαιτείται για να υλοποιήσετε ολόκληρη τη λίστα των συμβολοσειρών.Τι θα κάνετε με το αρχείο; Υπάρχει αυτό το αρχείο για ανθρώπους ή για άλλα προγράμματα με σαφείς απαιτήσεις διαλειτουργικότητας;
Εάν προσπαθείτε απλώς να σειριοποιήσετε μια λίστα στο δίσκο για μεταγενέστερη χρήση από την ίδια εφαρμογή python, θα πρέπει να pickleing τη λίστα.
Για να την διαβάσετε πίσω:
Ο απλούστερος τρόπος είναι:
Θα μπορούσατε να διασφαλίσετε ότι όλα τα στοιχεία στη λίστα item list είναι συμβολοσειρές χρησιμοποιώντας μια έκφραση γεννήτριας:
Να θυμάστε ότι όλες οι λίστες
itemlist
πρέπει να βρίσκονται στη μνήμη, οπότε προσέξτε την κατανάλωση μνήμης.