Αντικειμενοστρεφής Προγραμματισμός Python. Κ.Π. Γιαλούρης

Σχετικά έγγραφα
Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

Προγραμματισμός και Εφαρμογές Υπολογιστών

Αρχεία Ένα αρχείο αποτελείται από μία σειρά ομοειδών δεδομένων που ονομάζονται λογικές εγγραφές (logical record)

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

Προγραμματισμός Η/Υ. Χειρισμός Αρχείων. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Αρχεία Δεδομένων. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Προγραμματισμός και Εφαρμογές Υπολογιστών

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. (Διάλεξη 15)

Μεθόδων Επίλυσης Προβλημάτων

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

Σύστηµα Αρχείων και Καταλόγων

S, (5, -3, 34, -23, 7) ( *, _

Προγραμματισμός και Εφαρμογές Υπολογιστών

Προγραμματισμός Ι. Είσοδος/Έξοδος. Δημήτρης Μιχαήλ. Ακ. Έτος Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Πως θα αποθηκεύσει τη λίστα με τα ψώνια του και θα την ανακτήσει στο Σ/Μ; και πως θα προσθέσει στη λίστα του επιπλέον προϊόντα;

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. ( ιάλεξη 13) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ΑΡ Χ Ε Ι Α Κ Ε Ι Μ Ε Ν Ο Υ (text files)

Σημειωματάριο Δευτέρας 20 Νοε. 2017

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07

Εργαστήριο 9: Αρχεία

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 3 ο. Πίνακες. Επικοινωνία:

Εισαγωγή στον Προγραμματισμό

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ (ΟΜΑΔΑ Α ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΗΜΕΡΗΣΙΩΝ ΕΠΑΛ (ΟΜΑΔΑ Α ΚΑΙ Β ) ΤΡΙΤΗ 13 ΙΟΥΝΙΟΥ 2017

Μάθημα 3: Αρχιτεκτονική Υπολογιστών

Προγραμματισμός Η/Υ. 7 η ενότητα: Αρχεία. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

Κεφάλαιο 12: Είσοδος και έξοδος δεδομένων σε αρχεία

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Μετατροπή χαρακτήρων ASCII σε αριθμό (atoi) & διάβασμα, και αποθήκευση του περιεχομένου του στη μνήμη. (Διάλεξη. Πανεπιστήμιο Κύπρου

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΩΝ & Δ ΤΑΞΗΣ ΕΣΠΕΡΙΝΩΝ ΥΠΟΛΕΙΠΟΜΕΝΕΣ ΠΑΝΕΛΛΑΔΙΚΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Σημειωματάριο Τετάρτης 25 Οκτ. 2017

Προγραμματισμός Υπολογιστών Τάξη Γ Αθανασιάδης Χρήστος ΠΕ19 ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

Kεφάλαιο 11 Λίστες και Ανάλυση Δεδομένων Kεφάλαιο 12 Εργαλεία ανάλυσης πιθανοτήτων Kεφάλαιο 13 Ανάλυση δεδομένων...

Ανάπτυξη και Σχεδίαση Λογισμικού

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β.

Alpha Web Banking Εργαλείο δηµιουργίας αρχείων Οδηγίες χρήσεως Αθήνα, Ιούλιος 2014

Κεφάλαιο 8ο: Αρχεία. 8.1 Τι είναι αρχείο;

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΩΝ & Δ ΤΑΞΗΣ ΕΣΠΕΡΙΝΩΝ

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Alpha Web Banking Εργαλείο δηµιουργίας αρχείων. Οδηγίες χρήσεως

Πληροφορική 2. Δομές δεδομένων και αρχείων

Λειτουργικά Συστήματα (ΙΙ) (διαχείριση αρχείων)

Διαδικασιακός Προγραμματισμός

Βασικές Έννοιες της Πληροφορικής

Προγραμματισμός Διαχείρισης Συστημάτων Ι

Διάλεξη 2. Μεταβλητές - Δομές Δεδομένων - Eίσοδος δεδομένων - Έξοδος: Μορφοποίηση - Συναρτήσεις. Διοργάνωση : ΚΕΛ ΣΑΤΜ

Προγραμματισμός και Εφαρμογές Υπολογιστών

Κεφάλαιο VΙ: Προσπέλαση Αρχείων. 5.1 Αρχεία δεδομένων.

Προγραμματισμός Η/Υ (ΤΛ2007 )

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

ΔΕΔΟΜΕΝΑ ΚΑΙ ΠΛΗΡΟΦΟΡΙΕΣ

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗΝ Α.Ε.Π.Π. Γ ΤΕΧΝΟΛΟΓΙΚΗΣ. Όνομα:.. Βαθμός: /100

Αρχεία κειμένου και η VB.NET

α. Οι συμβολοσειρές είναι μια ακολουθία από χαρακτήρες. Μια συμβολοσειρά μπορεί να αποτελείται από περισσότερες από μία λέξεις.

Το εσωτερικό του Υπολογιστή. Χρήστος Ρέτσας 1

Τεχνολογία και Προγραμματισμός Υπολογιστών. Η γλώσσα προγραμματισμού C

Πεδία (Attributes) Συσχετίσεις (Relationships) Κλειδιά (Identifiers) Οντότητες είναι υποψήφια αρχεία

Προγραμματισμός και Εφαρμογές Υπολογιστών

Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX. Συστήματα Αρχείων. Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη

ENOTHTA 8 IAXEIPIΣH KAI ΣYΣTHMATA APXEIΩN

Εισαγωγή στην Tcl. Τί είναι η Tcl;

Δομές Δεδομένων. Ενότητα 4: Ο ΑΤΔ Λίστα & Υλοποίηση Λίστας με σειριακή αποθήκευση- Ο ΑΤΔ Συνδεδεμένη Λίστα- Υλοποίηση ΑΤΔ Συνδεδεμένη Λίστα με πίνακα

Εισαγωγή στον Προγραμματισμό Python Μάθημα 1: Μεταβλητές, τελεστές, είσοδος/έξοδος προγράμματος, συνθήκη ελέγχου if Νοέμβριος 2014 Χ. Αλεξανδράκη, Γ.

Μετατροπή χαρακτήρων ASCII σε ακέραιο αριθµό (atoi) & Άνοιγµα αρχείου µέσα από τo QtSPIM, διάβασµα, και αποθήκευση του περιεχοµένου του στη µνήµη

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017

Εισαγωγή στην Πληροφορική

Βιβλιοθήκη stdio. Προγραμματισμός II 1

Κατακερματισμός. 4/3/2009 Μ.Χατζόπουλος 1

Εισαγωγή στην Πληροφορική

Εφαρµογές Υπολογιστών Βασίλης Μπλιάµπλιας Γεωργία Τσούτσου Γιώργος Συνάπαλος

Προγραμματισμός και Εφαρμογές Υπολογιστών

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων

Το συγκεκριμένο εγχειρίδιο δημιουργήθηκε για να βοηθήσει την κατανόηση της διαδικασίας δημιουργίας εγγράφων από το χρήστη. Παρακάτω προτείνεται μια

ΑΣΚΗΣΗ 7: ΑΛΦΑΡΙΘΜΗΤΙΚΑ

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.

Κεφάλαιο 2.4: Εργασία με εικονίδια

Αγωγοί/Σωλήνες (Pipes) Προγραμματισμός II 1

Λειτουργικά Συστήματα (Λ/Σ)

Βάσεις Δεδομένων. Μιχάλης Μαλιάππης

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ

Προγραμματισμός Ι (HY120)

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον. Διάρκεια 3 ώρες. Όνομα... Επώνυμο... Βαθμός...

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α ΤΑΞΗ

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ. Πρόγραμμα Διαχείρισης Α.Π.Δ.

for for for for( . */

Βιβλιοθήκη stdio. Προγραμματισμός II 1

Τεχνολογία Πολυμέσων. Ενότητα # 3: Συστήματα πολυμέσων Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Μορφοποίηση και Αρχεία Δεδομένων. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Εισαγωγή στους Υπολογιστές

Transcript:

Κ.Π. Γιαλούρης

Στόχοι του σημερινού μαθήματος Γνώση των εντολών χειρισμού αρχείων Άνοιγμα, Κλείσιμο αρχείου Ανάγνωση αρχείου, Εγγραφή σε αρχείο Επίλυση προβλημάτων επεξεργασίας αρχείων 2

Η έννοια του αρχείου Για να είναι δυνατή επεξεργασία μεγάλου αριθμού δεδομένων τα δεδομένα είναι αποθηκευμένα σε ψηφιακά μέσα κατάλληλα οργανωμένα. Η αποθήκευση γίνεται σε αρχεία. Ένα αρχείο αποτελείται από μία σειρά ομοειδών δεδομένων που ονομάζονται λογικές εγγραφές (logical record) Κάθε λογική εγγραφή ενός αρχείου αποτελείται από μία σειρά διακριτών δεδομένων που έχουν νόημα επεξεργασίας που ονομάζονται πεδία (fields). 3

Η έννοια του αρχείου code eponyno tmima fylo πεδίο 12 Γεωργίου Γεώργιος 1 1 15 Θεοδώρου Μαρία 1 2 22 Πέτρου Κων/νος 1 1 32 Παπαδόπουλος Ιωάννης 2 1 54 Παππά Ελένη 1 2 42 Ωραιόπουλος Γεώργιος 4 1 Λογική εγγραφή 4

Η έννοια του αρχείου Ο κωδικός (code) Το ονοματεπώνυμο (eponymo) Το Τμήμα (tmima) Το φύλο (fylo) Είναι πεδία και τα 4 μαζί αποτελούν μία λογική εγγραφή ενός αρχείου που περιέχει στοιχεία φοιτητών της παραπάνω μορφής. Python 5

Είδη αρχείων στη Python Σειριακά αρχεία. Αρχεία τυχαίας προσπέλασης. Python 6

Σειριακά αρχεία στη Python Τα σειριακά αρχεία αποτελούνται από μια σειρά γραμμών κειμένου Αποθηκεύονται χρησιμοποιώντας ένα byte για κάθε χαρακτήρα και μπορούμε να τα επεξεργαστούμε μέσω ενός απλού κειμενογράφου όπως το σημειωματάριο (notepad) των Windows Τα πεδία συνήθως διαχωρίζονται με ένα κενό ή ένα κόμμα (,) Python 7

Βασικές ενέργειες σε αρχεία Άνοιγμα αρχείου. Ανάγνωση δεδομένων από αρχείο ή εγγραφή δεδομένων σε αρχείο Κλείσιμο αρχείου. 8

Βασικές ενέργειες σε αρχεία Για να γίνει οποιαδήποτε προσπέλαση σε αρχείο πρέπει προηγουμένως να έχει γίνει άνοιγμα (open) του αρχείου. Μετά το τέλος της επεξεργασίας ενός αρχείου πρέπει να κλείσουμε (close) το αρχείο. 9

Η εντολή Open για σειριακά αρχεία file_object = open( filename, mode ) Mode : r δηλώνει μόνο για διάβασμα w a δηλώνει μόνο για γράψιμο δηλώνει επέκταση ενός ήδη υπάρχοντος αρχείο (μόνο γράψιμο) 10

Παράδειγμα ανάγνωσης αρχείου Ένα σειριακό αρχείο με όνομα paragogi.txt βρίσκεται στο δίσκο D στο directory arxeia. D:\arxeia\paragogi.txt. Tα στοιχεία του αρχείου αφορούν στην παραγωγή κρέατος ανά κτηνοτροφική μονάδα Η δομή του αρχείου είναι: Κωδικός μονάδας (ακέραιος) Επωνυμία μονάδας (χαρακτήρες). Κωδικός ζώου (5 ακέραιος) Κωδικός είδους (ακέραιος, 1= μοσχάρι, 2=αρνί, 3=κατσίκι) Ημέρα (ακέραιος) Μήνας σφαγής (ακέραιος). Έτος σφαγής (ακέραιος) Ποσότητα κρέατος σε κιλά (πραγματικός). Να γραφεί πρόγραμμα που να διαβάζει κάθε εγγραφή του αρχείου και να την εμφανίζει το στην οθόνη 11

Ανάγνωση αρχείου arxeio = open("f:/arxeia/paragogi.txt", 'r') grammi = arxeio.readline() k=0 while grammi: k=k+1 print(k, " ", grammi) grammi = arxeio.readline() arxeio.close() 12

Ανάγνωση αρχείου arxeio = open("f:/arxeia/paragogi.txt",'r') for record in arxeio: print(record) arxeio.close() 13

Ανάγνωση αρχείου arxeio = open("f:/arxeia/paragogi.txt",'r') for record in arxeio: pedia=record.split(",") code= int(pedia[0]) eponymo=pedia[1] print(code, eponymo) arxeio.close() 14

Παράδειγμα δημιουργίας αρχείου Να γραφεί πρόγραμμα το οποίο: Διαβάζει από την οθόνη τα παρακάτω στοιχεία που αφορούν στη βαθμολογία ενός φοιτητή: Κωδικός φοιτητή Ονοματεπώνυμο φοιτητή Βαθμός-1 Βαθμός-2 Βαθμός-3 Και να τα γράφει σε ένα αρχείο με όνομα students.txt Η διαδικασία να επαναλαμβάνεται μέχρις ότου να δοθεί ως κωδικός φοιτητή ο αριθμός 0(μηδέν) 15

Δημιουργία Αρχείου arxeio = open("f:/arxeia/students.txt", 'w') epan = True while epan: code=input("δώσε κωδικό φοιτητή ") if int(code)!=0: epon=input("επώνυμο φοιτητή ") ba1=input("βαθμός 1ος") ba2=input("βαθμός 2ος") ba3=input("βαθμός 3ος") record=code+","+epon+","+ba1+","+ba2+","+ba3+ \n" arxeio.write(record) else: epan=false arxeio.close() 16

Άσκηση 1 Ένας κτηνοτροφικός συνεταιρισμός διαθέτει σε ένα ψηφιακό αρχείο με όνομα PARAGOGI.TXT τα στοιχεία παραγωγής κρέατος ανά κτηνοτροφική μονάδα. Το αρχείο περιέχει τα εξής στοιχεία σφαγής: - Κωδικός μονάδας (ακέραιος) - Επωνυμία μονάδας (χαρακτήρες). - Κωδικός ζώου (ακέραιος) - Κωδικός είδους (ακέραιος, 1= μοσχάρι, 2=αρνί, 3=κατσίκι) - Ημέρα (ακέραιος) - Μήνας σφαγής (ακέραιος). - Έτος σφαγής (ακέραιος) - Ποσότητα κρέατος σε κιλά (πραγματικός). Να γραφεί πρόγραμμα που διαβάζει το αρχείο και να υπολογίζει το ποσόν της επιδότησης που θα εισπράξει κάθε μονάδα για κάθε σφαγή. Η επιδότηση υπολογίζεται ως ποσό ανά κιλό κρέατος και είδος ζώου, ως εξής: Είδος ζώου Ποσό επιδότησης ανά κιλό Μοσχάρι 0.25 Αρνί 0.20 Κατσίκι 0.15 Για κάθε εγγραφή που αφορά σε σφαγή μοσχαριού εμφανίζει στην οθόνη τον κωδικό της μονάδας, την επωνυμία, την ποσότητα κρέατος και το ποσό επιδότησης. Τέλος το κύριο πρόγραμμα υπολογίζει και εμφανίζει στην οθόνη: Τη συνολική αξία επιδότησης που θα λάβουν όλες οι μονάδες Το συνολικό βάρος κρέατος ανά είδος Για κάθε είδος ζώου το συνολικό βάρος 17