ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Εισαγωγή στην Python Χειµερινό Εξάµηνο 2014

Σχετικά έγγραφα
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Εισαγωγή στην Python Χειμερινό Εξάμηνο 2016

Εισαγωγή στον Προγ/μό Υπολογιστών

Βασικά στοιχεία γλώσσας προγραμματισμού. Σπάχος Κυριάκος Καθηγητής Πληροφορικής ΠΕ19

ΜΑΘΗΜΑΤΑ PYTHON. Καθηγητής Ι. Δημητρίου.

ΜΑΘΗΜΑΤΑ PYTHON. Καθηγητής Ι. Δημητρίου.

Γλώσσα προγραμματισμού python

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

ΚΕΦΑΛΑΙΟ 2. Τιμές, τύποι, μεταβλητές, λέξεις-κλειδιά, εντολές. 2.1 Εισαγωγή

Βασικά στοιχεία γλώσσας προγραμματισμού

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Λίστες και Πλειάδες Χειµερινό Εξάµηνο 2014

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Αλφαριθμητικά Χειμερινό Εξάμηνο 2016

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

Θέματα Προγραμματισμού Η/Υ

Θέματα Προγραμματισμού Η/Υ

Εισαγωγή στην Γλώσσα Προγραμματισμού Python. 12/10/16 1

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Σφάλµατα, εξαιρέσεις, εκσφαλµάτωση Χειµερινό Εξάµηνο 2014

Γλώσσες Προγραμματισμού Εφαρμογών - ΜΕΠΒ20

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Σφάλματα, εξαιρέσεις, εκσφαλμάτωση Χειμερινό Εξάμηνο 2016

Εργαστήριο 2ο. Περίγραμμα Εργαστηριακής Άσκησης

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Ακολουθίες: Λίστες και Πλειάδες Χειμερινό Εξάμηνο 2016

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

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

Τύποι Δεδομένων Είσοδος/Έξοδος

Πληροφορική ΙΙ Θεματική Ενότητα 4

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Σημειωματάριο Δευτέρας 9 Οκτ. 2017

a = 10; a = k; int a,b,c; a = b = c = 10;

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

Κεφάλαιο 2.6: Είσοδος / Έξοδος εδοµένων, Μορφοποίηση εδοµένων Εξόδου. ( ιάλεξη 7) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Λεξικά Χειμερινό Εξάμηνο 2016

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Λεξικά Χειµερινό Εξάµηνο 2014

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

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

Δεδομένα, τελεστές, είσοδος/έξοδος

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου)

Κεφάλαιο , 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Βασικά στοιχεία της Java

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Λογικός Σχεδιασµός και Σχεδιασµός Η/Υ. ΗΜΥ-210: Εαρινό Εξάµηνο Σκοπός του µαθήµατος. Ψηφιακά Συστήµατα. Περίληψη. Εύρος Τάσης (Voltage(

Εισαγωγή στον Προγραµµατισµό. Χειµερινό Εξάµηνο 2014

Εισαγωγή στον Προγ/μό Υπολογιστών

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python

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

ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7) Είσοδος/ Έξοδος

ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στην Python και στο IDLE

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7)

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS.

επιµέλεια Θοδωρής Πιερράτος

ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 1

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΜΟΣ Εντολές επιλογής και αποφάσεων 1 ο Φύλλο Εργασιών Εισαγωγικές ασκήσεις για την εντολή if ΑΠΑΝΤΗΣΕΙΣ

Εισαγωγή στη γλώσσα προγραμματισμού C++14

ΕΡΓΑΣΤΗΡΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΗ C. Τµήµα Πληροφορικής και Τηλεπικοινωνιών

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Αναζήτηση και Ταξινόµηση Χειµερινό Εξάµηνο 2014

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

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

Πληροφορική ΙΙ Θεματική Ενότητα 3

Τύποι δεδομένων, τελεστές, μεταβλητές

ΜΥΥ105: Εισαγωγή στον Προγραμματισμό. Αναζήτηση και Ταξινόμηση Χειμερινό Εξάμηνο 2016

Κεφάλαιο 2.5: Τύποι εδοµένων, Τελεστές και Αριθµητικές Εκφράσεις. ( ιαλέξεις 5-6) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

scanf() scanf() stdin scanf() printf() int float double %lf float

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit!

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Μεταβλητές- Τύποι- Τελεστές

7. Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου

Πράξεις με δυαδικούς αριθμούς

Pascal, απλοί τύποι, τελεστές και εκφράσεις

ΕισαγωγήστουςΗ/Υ. PHP Hypertext Preprocessor

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

Κεφάλαιο 1. Τι θα μάθουμε σήμερα: -AND, OR, NOT. -Ενσωματωμένες συναρτήσεις. -Μαθηματικοί τελεστές -ΤΕΛΕΣΤΕΣ DIV ΚΑΙ MOD. -Προτεραιότητα πράξεων

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Αναδροµικές Συναρτήσεις Χειµερινό Εξάµηνο 2014

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

Προγραμματισμός Η/Υ. Ενότητα 2β: Εισαγωγή στη C (Μέρος Δεύτερο)

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

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής

Μεταφραστής (Compiler)

Βασικές Ασκήσεις από τα Εργαστήρια της Python. Πέμπτη Εργ. 3 17:15 και 19:15

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

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

ΚΕΦΑΛΑΙΟ 3. Εκφράσεις, τελεστές, σχόλια. 3.1 Εισαγωγή

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

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

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

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

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

ιαχείριση Πληροφοριών στο ιαδίκτυο

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα

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

ΗΥ 134. Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι. Διάλεξη 1. Εισαγωγή. Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

ΠΛΗΡΟΦΟΡΙΚΗ Ι (Python) Ενότητα 4

Πληροφορική ΙΙ Θεματική Ενότητα 2

Transcript:

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Εισαγωγή στην Python Χειµερινό Εξάµηνο 2014

Εγκατάσταση Από το www.python.org è Downloads Υπάρχουν εκτενείς οδηγίες για όλα τα λειτουργικά (π.χ., Windows, Mac OS X) Δύο βασικές εκδόσεις της Python: Python 2.X Python 3.X Οι διαφορές τους (τουλάχιστον στο επίπεδο αυτού του µαθήµατος) δεν είναι πολύ µεγάλες. Δεν είναι όµως συµβατές µεταξύ τους. Στο µάθηµα θα ακολουθήσουµε την Python 3.X. 2

Ο Διαδραστικός Διερµηνέας Μετά την εγκατάσταση, µπορούµε να «ανοίξουµε» το διαδραστικό διερµηνέα (interactive interpreter) Μέσω του κελύφους, πληκτρολογώντας python3 Τρέχοντας το πρόγραµµα IDLE Ο διερµηνέας σας επιτρέπει να εισάγετε εντολές Python γραµµή-γραµµή, που εκτελούνται άµεσα. Python 3.4.1 (v3.4.1:c0e311e010fc, May 18 2014, 00:54:21) [GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin Type "copyright", "credits" or "license()" for more information. >>> WARNING: The version of Tcl/Tk (8.5.9) in use may be unstable. Visit http://www.python.org/download/mac/tcltk/ for current information. >>> 3

Εξοικείωση Μια πρώτη εντολή: >>> print("hello, world!") Hello, world! Κάτι άκυρο: >>> The Spanish Inquisition SyntaxError: invalid syntax 4

Αριθµητικές Πράξεις >>> 2+2 4 >>> 1/2 0.5 >>> 4/2 2.0 µπορείτε να χρησιµοποιήσετε την Python σαν αριθµητήριο! 5

int και float Οι πραγµατικοί αριθµοί στις γλώσσες προγραµµατισµού λέγονται «αριθµοί κινητής υποδιαστολής» (floating-point numbers) int (integer, ακέραιος) float (floating-point number, πραγµατικός) Οι αριθµοί 3 και 5 είναι ακέραιοι. Οι αριθµοί 3.5 και 5.0 είναι αριθµοί κινητής υποδιαστολής. Οι ακέραιοι µετατρέπονται σε floats κατ ανάγκην 6

int και float Οι ακέραιοι στην Python µπορούν να είναι όσο µεγάλοι θέλουµε >>> 2**1024 1797693134862315907729305190789024733617976978942306572734300811577326 7580550096313270847732240753602112011387987139335765878976881441662249 2847430639474124377767893424865485276302219601246094119453082952085005 7688381506823424628814739131105408272371633505106845862982399472459384 79716304835356329624224137216 Οι floats περιορίζονται σε 64bits >>> 2.0**1024 Traceback (most recent call last): File "<pyshell#37>", line 1, in <module> 2.0**1024 1.79*10 308 OverflowError: (34, 'Result too large') >>> sys.float_info sys.float_info(max=1.7976931348623157e+308, min=2.2250738585072014e-308) 7

Τελεστές Ακέραιας Διαίρεσης >>> 5/2 2.5 >>> 5//2 2 >>> 5%2 1 διαίρεση πραγµατικών ακέραια διαίρεση υπόλοιπο ακέραιας διαίρεσης 8

Ύψωση σε δύναµη >>> 2**3 8 >>> -3**2-9 >>> (-3)**2 9 9

Μη δεκαδικοί αριθµοί Το AF στο δεκαεξαδικό σύστηµα ισούται µε 10*16+15=175 στο δεκαδικό σύστηµα. >>>0xAF 175 To 10 στο οκταδικό σύστηµα ισούται µε 1*8+0=8 στο δεκαδικό σύστηµα. >>>0o10 8 >>> 0b1001000101001 4649 10

Απλές Μαθηµατικές Συναρτήσεις >>> abs(-4) 4 >>> max(2,-5,6) 6 >>> min(2,-5,6) -5 >>>pow(2,3) 8 >>>round(3.8) 4 11

Modules Επεκτείνουν την Python πέρα από τις βασικές εντολές/συναρτήσεις της >>> import math >>> math.floor(3.5) 3 >>> math.sqrt(9) 3.0 Το math είναι module µεγαλύτερος ακέραιος µικρότερος ή ισος του 3.5 συνάρτηση τετραγωνικής ρίζας 12

Module fraction Χειρισµός κλασµάτων Αν θέλουµε µεγαλύτερη ακρίβεια από floats >>> import fractions >>> a = fractions.fraction(3,4) >>> b = fractions.fraction(1,2) >>> c = a+b >>> c Fraction(5, 4) Το κλάσµα 3/4 13

Module fraction Χειρισµός κλασµάτων Αν θέλουµε µεγαλύτερη ακρίβεια από floats >>> 0.5**1075 0.0 >>> fractions.fraction(1,2)**1075 Fraction(1, 404804506614621236704990693437834614099113299528284236713 802716054860679135990693783920767402874248990374155728633 623822779617474771586953734026799881477019843034848553132 722728933815484186432682479535356945490137124014966849385 397236206711298319112681620113024717539104666829230461005 064372655017292012526615415482186989568) 14

Δυαδικές Εκφράσεις >>> 2<3 True >>> 3<2 False >>> 5-1>2+1 True δεσµευµένες λέξεις στην Python για δυαδικές εκφρασεις 15

Τελεστές Σύγκρισης Αριθµών >>> 3 == 3 True >>> 3+5 == 4+4 True >>> 3 == 5-3 False >>> 3 <= 4 True >>> 3 > 5 False >>> 3!= 5 True 16

Δυαδικοί Τελεστές >>> 2 < 3 and 4 > 5 False >>> 3 < 5 and True True >>> 3 < 4 or 4 <3 True >>> 3 < 2 and 2 < 1 False >>> not (3 < 4) False p T F not p F T πίνακες αληθείας p q p and p T T T T F F F T F F F F p q p or p T T T T F T F T T F F F 17

Σχέση τύπων bool, int, float True = 1 και False = 0 Μετατροπή τύπων µε bool(), int(), float() >>> 5+True 6 >>> bool(5-5) False >>> bool(3-2.8) True >>> float(false) 0.0 >>> int(4.8+true) 5 µετατροπή σε True/False όλοι οι αριθµοί εκτός του 0 µετατρέπονται σε True µετατροπή σε πραγµατικό ακέραιο µέρος του 5.8 18

Μεταβλητές >>> x=3 >>> x*2 6 >>> print(x*3) 9 απόδοση τιµής <µεταβλητή> = <έκφραση> 19

Προσοχή! >>> x=1 >>> y=x >>> x=100 >>> y 1 Η τιµή µιας µεταβλητής µετά την αρχικοποίησή της είναι ανεξάρτητη από τις άλλες µεταβλητές! 20

Ποια η διαφορά; >>> 2*3 6 >>> print(2*3) 6 Η έκφραση αυτή δεν θα κάνει τίποτα σε ένα πρόγραµµα Python Η εντολή αυτή θα τυπώσει 6 σε ένα πρόγραµµα Python 21

Απόδοση τιµής από το χρήστη >>> name = input("please input your name: ") Please input your name: Nikos >>> name 'Nikos >>> x = input("x: ") x: 3 >>> x '3' >>> x = int(input("x: ")) x: 4 >>> x 4 To x δεν είναι αριθµός! Η συνάρτηση int() αρχικοποιεί έναν ακέραιο παίρνοντας σαν είσοδο ένα αλφαριθµητικό 22

Αλλά... >>> x = int(input("x: ")) x: 4.5 Traceback (most recent call last): File "<pyshell#64>", line 1, in <module> x = int(input("x: ")) ValueError: invalid literal for int() with base 10: '4.5 >>> x = float(input("x: ")) x: 4.5 >>> x 4.5 >>> x = eval(input("x: ")) Η συνάρτηση µετατροπής περιµένει ακέραιο! Αυτόµατη µετατροπή 23

Ονόµατα Μεταβλητών Στα Αγγλικά! Επιτρεπτοί χαρακτήρες: A..Z, a..z, _, 0..9 Μια µεταβλητή ΔΕΝ µπορεί να αρχίζει µε ψηφίο (0..9) π.χ. my_list, mylist, mylist, _list, αλλά όχι 5list, list-3 Διαλέγουµε ονόµατα που βγάζουν νόηµα π.χ. interestrate, tempvar θα βοηθήσουν άλλους να κατανοήσουν το πρόγραµµά µας...και εµάς(!) για να το θυµηθούµε ή να το εκσφαλµατώσουµε ΔΕΝ χρησιµοποιούµε δεσµευµένα ονόµατα (reserved keywords), π.χ. False, for, class 24

Αλφαριθµητικά Ακολουθίες χαρακτήρων κλεισµένες σε εισαγωγικά "Hello World" ή 'Hello World', αλλά όχι "Hello World >>> "Hello World!" 'Hello World!' >>> s = "hello" >>> s 'hello' 25

Προσοχή! >>> 'Let's go' SyntaxError: invalid syntax >>> "Let's go" "Let's go" >>> 'Let\'s go' "Let's go" 26

Σύγκριση αλφαριθµητικών >>> s = "hello" >>> s == "hello" True >>> t = "world" >>> s!= t True >>> s == t False >>> s < t True µε βάση τη λεξικογραφική σειρά! 27

Πράξεις µε αλφαριθµητικά >>> s + " " + t 'hello world' >>> s * t Traceback (most recent call last): File "<pyshell#94>", line 1, in <module> s * t TypeError: can't multiply sequence by non-int of type 'str >>> 3 * "A" 'AAA' >>> "hello " * 2 'hello hello ' 28

Τελεστής in και συνάρτηση len >>> s = "hello" >>> 'g' in s False >>> 'll' in s True >>> len(s) 5 29

Δεικτοδότηση αλφαριθµητικών Οι χαρακτήρες σε ένα αλφαριθµητικό δεικτοδοτούνται Ο πρώτος χαρακτήρας είναι στη θέση 0, ο δεύτερος στη θέση 1, κ.ο.κ. >>> s = "hello" >>> s[0] 'h' >>> s[3] 'l' >>> s[4] 'o' 30

Αρνητική δεικτοδότηση Μπορούµε να προσπελάσουµε τους χαρακτήρες και από το τέλος Ο τελευταίος χαρακτήρας είναι στη θέση -1, ο προτελευταίος στη θέση -2, κ.ο.κ. >>> s = "hello" >>> s[-1] 'o' >>> s[-4] 'e' θετικοί δείκτες αρνητικοί δείκτες αλφαριθµητικό 0 1 2 3 4-5 -4-3 -2-1 h e l l o 31

Μακρά Αλφαριθµητικά Αλφαριθµητικά που χρειάζονται πολλές γραµµές (π.χ. κείµενα). >>> print( '''This is a very long string. It continues here. And it's not over yet. "Hello, world! Still here.''') >>> print("hello, \ World!") Hello, World! 32

Τιµές, Τύποι, Αντικείµενα Έχουµε δει κάποιους τύπους τιµών int, float, str Κάθε τιµή στην Python (π.χ. ακέραιος, αλφαριθµητικό) αποθηκεύεται στη µνήµη ως αντικείµενο Κάθε αντικείµενο έχει λοιπόν µια τιµή και ένα τύπο type: int 3 type: float 3.0 type: str 'Hello World' 33

Οι µεταβλητές δεν έχουν τύπο Οι µεταβλητές είναι απλά ονόµατα για τα αντικείµενα στα οποία αναφέρονται. >>> s = "hello" >>> type(s) <class 'str'> Η παραπάνω συνάρτηση µας δίνει τον τύπο του αντικειµένου στο οποίο αναφέρεται η µεταβλητή s 34

Προγράµµατα σε Python Μπορούµε να δηµιουργήσουµε ένα πρόγραµµα και να το σώσουµε σε ένα αρχείο κειµένου. Μπορούµε να χρησιµοποιήσουµε οποιοδήποτε επεξεργαστή κειµένου. Επεξεργαστές κειµένου για γλώσσες προγραµµατισµού µας βοηθάνε στη συγγραφή και παρέχουν λειτουργίες εκτέλεσης του προγράµµατος. Ο επεξεργαστής κειµένου που έρχεται µε την εγκατάσταση της Python ειναι το IDLE. Εναλλακτικά: UltraEdit, Crimson, emacs 35

Προγράµµατα σε Python Ένα αρχείο προγράµµατος Python µπορεί να εκτελεστεί: Μέσω του IDLE Από το κέλυφος ή τη γραµµή διαταγών width = int(input("width: ")) length = int(input("length: ")) area = width*legth print("area: ", area) Ø python3 area.py Width: 3 Length: 4 Area: 12 πρόγραµµα εκτέλεσης αρχείων Python όνοµα αρχείου Python Αρχείο (area.py) Εκτέλεση στο κέλυφος Μετατρέποντας το αρχείο σε εκτελέσιµο 36

Σχόλια Τα προγράµµατα πρέπει να τεκµηριώνονται για να µπορεί κάποιος που θα διαβάσει τον κώδικά σας να τον κατανοήσει για να θυµάστε εσείς ποιος είναι ο σκοπός ή το νόηµα ενός µέρους του προγράµµατος η τεκµηρίωση διευκολύνει την εκσφαλµάτωση Σχόλια: οτιδήποτε ακολουθεί µια δίεση (#) # this program computes the area of a rectangle width = int(input("width: ")) # ask the user to input the width length = int(input("length: ")) # ask the user to input the length area = width*legth # compute the area print("area: ", area) # print the area Αρχείο (area.py) 37