Tassos10 έγραψε:
Σε ευχαριστώ πολύ, αν και δεν το πολύ κατάλαβα αυτό με το with statement ( σου εξασφαλίζει δηλαδή, ότι θα κλείσει το αρχείο στο τέλος και ας ξεχάσεις αν δώσεις εσύ την εντολή; ) αλλά θα το ξαναδώ, μόλις ξεκαθαρίσω πρώτα αυτό το θέμα...
Όπως τρέχει το πρόγραμμα σου μπορεί να συμβούν διάφορα πράγματα όπως να κρασάρει ή να προκύψει οποιοδήποτε σφάλμα. Αν αυτό γίνει όσο το αρχείο είναι ανοιχτό απ' το πρόγραμμα σου, το αρχείο θα παραμείνει ανοιχτό και μετά τον τερματισμό του προγράμματος και αυτό σίγουρα δεν είναι καλό. Αυτό αντιμετωπίζεται είτε με ένα try..finally block είτε με το with statement το οποίο είναι ένας πολύ καλύτερος τρόπος να το κάνεις. Ουσιαστικά σου εξασφαλίζει ότι σε οποιαδήποτε περίπτωση το αρχείο που άνοιξες θα κλείσει κανονικά.
Tassos10 έγραψε:
Όσο για αυτό που λέω, για την σειριακή επεξεργασία, είναι να θέλω να ανοίγω π.χ. το αρχείο και να ψάχνω ένα ένα τα στοιχεία που έχει μέσα,
π.χ. να βλέπω αν τα στοιχεία που έχει μέσα είναι διατεταγμένα σε αύξουσα σειρά ( αν υπάρχουν ). σε ποια θέση είναι το τάδε στοιχείο ( αν υπάρχει ), να μου δίνει το στοιχείο της τάδε θέσης ( αν υπάρχει), να μετράω τα στοιχεία..κτλπ..
Επεξεργασία κάθε στοιχείου που έχει μέσα το αρχείο, ένα ένα ξεχωριστά και να προχωράω στο επόμενο.
Το θέμα είναι τι εννοείς στοιχεία; Μαντεύω ότι θες να διαβάσεις αρχεία που έχουν συγκεκριμένη μορφή ή ακολουθούνται κάποια μοτίβα σ' αυτά. Ανάλογα την περίπτωση θα κάνεις διαφορετικούς χειρισμούς. Πχ. μπορείς να διαβάζεις το αρχείο γραμμή, γραμμή και έτσι να τερματίζεις την διαδικασία όποτε το θέλεις εσύ.
Διάβασε όλο το κεφάλαιο files στο dive into python αν θες.