Επιστημονικά Θέματα, Τεχνολογικά Νέα, Μουσική, Τραγούδια, Προγραμματισμός, Φωτογραφίες, Βίντεο, Καλλιτεχνικά θέματα, Τρόπος Ζωής, Θέματα θρησκείας, Συμβουλές και άλλα πολλά από το www.iliasblog.gr  

Δομή Επιλογής


  • Στο πρόγραμμα, συχνά κάνουμε ερωτήσεις που μπορούν να απαντηθούν με ένα ναι ή όχι.
  • Βασιζόμενοι στην απάντηση, αποφασίζουμε να κάνουμε ή όχι κάποια ενέργεια.
  • Αυτές οι ερωτήσεις είναι γνωστές ως συνθήκες (conditions)

ΣΥΝΘΗΚΕΣ
  • Μια συνθήκη είναι μια πρόταση που συγκρίνει δύο τιμές (αριθμούς ή strings) και επιστρέφει την τιμή True ή την τιμή False ανάλογα με το αν ισχύει ή όχι.
  • Μερικά παραδείγματα συνθηκών είναι τα παρακάτω:
    • >>> age >=18
    • >>> name == "John"
    • >>> num < 0
    • >>> color != "black"
ΣΥΓΚΡΙΤΙΚΟΙ ΤΕΛΕΣΤΕΣ
  • Στη Python, χρησιμοποιούμε ειδικά σύμβολα για να δημιουργούμε συνθήκες.
  • Αυτά τα σύμβολα ονομάζονται συγκριτικοί τελεστές και παρουσιάζονται παρακάτω:
    • ==            'Ισον
    • !=             Διάφορο
    •             Μεγαλύτερο
    •             Μικρότερο
    • >=            Μεγαλύτερο ή Ίσο
    • <=            Μικρότερο ή Ίσο
ΠΡΟΤΑΣΗ IF
  • Δημιουργείται με τη λέξη if ακολουθούμενη από μια συνθήκη και μία άνω-κάτω τελεία (:)
  • Οι εντολές μετά την άνω-κάτω τελεία αποτελούν ένα block εντολών και πρέπει να γράφονται σε εσοχή μερικών κενών χαρακτήρων (spaces).
  • Αν η απάντηση στη συνθήκη είναι True, τότε εκτελούνται οι εντολές του block, διαφορετικά δεν γίνεται τίποτα.
>>> if  συνθήκη:
>>>     Εντολή 1
>>>     Εντολή 2
>>>     Εντολή 3

Παράδειγμα 1: αν η συνθήκη βρεθεί True, εμφανίζουμε το μήνυμα “positive number” διαφορετικά δεν κάνουμε τίποτα


Παράδειγμα 2: αν η συνθήκη βρεθεί True εκτελούνται οι εντολές του block που αποτελούνται από 3 εντολές print.


ΟΜΑΔΑ ΕΝΤΟΛΩΝ (BLOCK)
  • Ένα block εντολών είναι μία αυτόνομη ομάδα εντολών που έχουν κάτι κοινό.
  • τη Python, όλες οι εντολές ενός block πρέπει να γράφονται με μία συγκεκριμένη εσοχή που αποτελείται από ένα σύνολο κενών χαρακτήρων (συνήθως 4 spaces ή 1 tab).
  • Όταν κάποιες εντολές γράφονται με εσοχή, αυτό σημαίνει ότι αποτελούν ένα block εντολών.


BLOCKS: ΠΑΡΑΔΕΙΓΜΑ 1


BLOCKS: ΠΑΡΑΔΕΙΓΜΑ 2


Στο παράδειγμα αυτό, αν και τα blocks 2 και 3 έχουν την ίδια εσοχή, θεωρούνται διαφορετικά blocks επειδή υπάρχει το block 1 ανάμεσα τους με μικρότερη εσοχή.

ΠΙΘΑΝΟ ΛΑΘΟΣ
  • Αν σε ένα block έχουμε 4 κενά σε μία γραμμή και 6 κενά σε μία άλλη προκαλείται συντακτικό λάθος εσοχής.
  • Η Python απαιτεί τον ίδιο αριθμό κενών ως εσοχή σε κάθε γραμμή ενός block.

Το περιβάλλον IDLE μαρκάρει με κόκκινο χρώμα τη γραμμή που εντοπίζει ένα λάθος εσοχής και εμφανίζει σχετικό μήνυμα SyntaxError.


ΠΡΟΤΑΣΗ IF-ELSE
  • Χρησιμοποιούμε την πρόταση if-else όταν θέλουμε να περιγράψουμε ποιο τμήμα εντολών θα εκτελεστεί όταν η συνθήκη είναι True και ποιο όταν είναι False.
  • Αν η συνθήκη βρεθεί True, τότε εκτελείται το block 1 διαφορετικά αν βρεθεί False, εκτελείται το block 2.
>>> if συνθήκη:
>>>     Εντολή1
>>>     Εντολή2
>>> else
>>>     Εντολή1
>>>     Εντολή2

Παράδειγμα: αν η συνθήκη βρεθεί True εμφανίζουμε το μήνυμα “positive number”. Διαφορετικά, αν η συνθήκη βρεθεί False, εμφανίζουμε το μήνυμα “not positive number”. 




ΠΡΟΤΑΣΗ IF-ELIF
  • Όταν θέλουμε να ελέγξουμε περισσότερες από μία συνθήκες στη σειρά, τότε η πρόταση if-elif είναι η καλύτερη δυνατή επιλογή.
  • Μπορούμε να έχουμε όσες εντολές elif χρειαστεί μέσα σε μία if-elif πρόταση.
>>> if συνθήκη1:
>>>     εντολή1
>>>     εντολή2
>>> elif συνθήκη2:
>>>     εντολή1
>>>     εντολή2
>>> elif συνθήκη3:
>>>     εντολή1
>>>     εντολή2
>>> else
>>>     εντολή1
>>>     εντολή2   

Παράδειγμα: ελέγχουμε την τιμή της μεταβλητής grade και εμφανίζουμε ανάλογο μήνυμα βάσει της κλίμακας 0-20.

Όταν γράφουμε μια πρόταση  if-elif, το IDLE εισάγει αυτόματα μια εσοχή. Άρα, όταν θέλουμε να προσθέσουμε ένα νέο τμήμα elifη else, πρέπει να πατάμε το BACKSPACE για να μετακινούμε τον κέρσορα στην αρχή της γραμμής

ΣΥΝΘΕΤΕΣ ΣΥΝΘΗΚΕΣ
  • Χρησιμοποιώντας τους λογικούς τελεστές and, or και not μπορούμε να συνδυάσουμε περισσότερες από μία συνθήκες μαζί δημιουργώντας σύνθετες.
  • Μερικά παραδείγματα σύνθετων συνθηκών είναι:
    • age >= 10 and age <= 18
    • answer == "yes" or  answer == "no"
    • a > b and b > c and not (c == d)
    • color == "red" or color == "blue"
ΣΥΖΕΥΞΗ (AND)
  • Ο τελεστής and χρησιμοποιείται για να συνδέσει δύο απλές συνθήκες δημιουργώντας μια σύνθετη.
  • Η σύνθετη συνθήκη είναι True όταν και οι δύο επιμέρους συνθήκες είναι True.
    • True and True = True
    • True and False = False
    • False and True = False
    • False and False = False
ΔΙΑΖΕΥΞΗ (OR)
  • Η λέξη-κλειδί or χρησιμοποιείται για να ενταχθούν μαζί δύο προϋποθέσεις σε μια δήλωση.
  • Η σύνθετη συνθήκη είναι True όταν ισχύει τουλάχιστον μία από τις συνθήκες.
    • True and True = True
    • True and False = True
    • False and True = True
    • False and False = False
ΑΡΝΗΣΗ (NOT)
  • Ο τελεστής not χρησιμοποιείται προκειμένου να αντιστρέψει την τιμή μιας συνθήκης.
  • Η σύνθετη συνθήκη είναι True όταν η απλή συνθήκη είναι False και το αντίθετο.
    • συνθήκη True not(Συνθήκη) False
    • συνθήκη False not(Συνθήκη) True
Παράδειγμα: Χρήση των λογικών τελεστών and και or στην πράξη για τη δημιουργία σύνθετων συνθηκών.


ΜΕΤΑΒΛΗΤΕΣ ΧΩΡΙΣ ΤΙΜΗ
  • Στην Python μπορούμε να εισάγουμε μια άδεια τιμή (γνωστή ως None) σε μία μεταβλητή με τον ίδιο τρόπο που της εκχωρούμε έναν αριθμό ή ένα string.
  • Η τιμή None σημαίνει την απουσία τιμής.

Η τιμή None είναι διαφορετική από την τιμή 0, γιατί παριστάνει την απουσία τιμής, παρά την αριθμητική τιμή 0.

ΜΕΤΑΒΛΗΤΕΣ ΜΕ ΤΙΜΗ NONE
  • Εκχωρώντας την τιμή None σε μία μεταβλητή εννοούμε ότι η μεταβλητή δεν έχει κάποια τιμή.
  • Αυτό είναι χρήσιμο όταν θέλουμε να ορίσουμε μια νέα μεταβλητή χωρίς να της αποδώσουμε κάποια τιμή.

Μακρής Ηλίας Π.Ε. Πληροφορικής