1.4 Εμφωλευμένες if και η δήλωση pass στην Python

Οι εντολές “if” μπορούν να περιλαμβάνονται μέσα σε άλλες εντολές “if”, και αυτή η τεχνική ονομάζεται “nested if statements” (εμφωλευμένες εντολές “if”). Η χρήση των φωλιασμένων εντολών “if” σας επιτρέπει να δημιουργήσετε πιο σύνθετες συνθήκες, επιτρέποντάς σας να ελέγχετε πολλές πτυχές μιας κατάστασης. Κάθε φορά που η συνθήκη στον εξωτερικό “if” είναι αληθής, η εκτέλεση μεταβιβάζεται στον εσωτερικό “if” για περαιτέρω έλεγχο. Αυτό σας επιτρέπει να κατασκευάσετε πιο πολύπλοκες συνθήκες που εξαρτώνται από πολλαπλές παραμέτρους.

Στην Python, η σύνταξη του nested if statement είναι η εξής:

if condition1:
    statement
    if condition2:
        statement

Σε αυτό το παράδειγμα, η συνθήκη του πρώτου “if” ελέγχει εάν η συνθήκη “condition1” είναι αληθής. Εάν η συνθήκη είναι αληθής, εκτελείται η εντολή “statement” και στη συνέχεια ελέγχεται η συνθήκη “condition2”. Εάν και αυτή η συνθήκη είναι αληθής, εκτελείται η δεύτερη εντολή “statement”.

Παρακάτω είναι ένα παράδειγμα χρήσης του nested if statement:

x = 10  # Αρχικοποίηση της μεταβλητής x με την τιμή 10
y = 5  # Αρχικοποίηση της μεταβλητής y με την τιμή 5

# Έλεγχος αν η μεταβλητή x είναι μεγαλύτερη από 5
if x > 5:
    print("x είναι μεγαλύτερο από 5")  # Εκτύπωση μηνύματος "x είναι μεγαλύτερο από 5"

    # Έλεγχος αν η μεταβλητή y είναι μεγαλύτερη από 2
    if y > 2:
        print("y είναι μεγαλύτερο από 2")  # Εκτύπωση μηνύματος "y είναι μεγαλύτερο από 2"

Ο κώδικας εκτελεί τις παρακάτω ενέργειες:

  1. Ορίζει τις μεταβλητές x και y με τις τιμές 10 και 5 αντίστοιχα.
  2. Ελέγχει αν η μεταβλητή x είναι μεγαλύτερη από 5.
  3. Αν η προηγούμενη συνθήκη είναι αληθής, εκτελεί την εντολή print("x είναι μεγαλύτερο από 5"), που εκτυπώνει το μήνυμα “x είναι μεγαλύτερο από 5”.
  4. Εσωτερικά στην προηγούμενη συνθήκη, ελέγχει αν η μεταβλητή y είναι μεγαλύτερη από 2.
  5. Αν η προηγούμενη εσωτερική συνθήκη είναι αληθής, εκτελεί την εντολή print("y είναι μεγαλύτερο από 2"), που εκτυπώνει το μήνυμα “y είναι μεγαλύτερο από 2”.

Έτσι, αν τόσο η μεταβλητή x είναι μεγαλύτερη από 5 όσο και η μεταβλητή y είναι μεγαλύτερη από 2, τότε θα εκτυπωθούν και τα δύο μηνύματα.

Μπορείτε να χρησιμοποιήσετε όσα επίπεδα εμφωλευμένων if statements χρειάζεστε. Ωστόσο, κάποιοι προγραμματιστές πιστεύουν ότι η υπερβολική χρήση εμφωλευμένων if statements μπορεί να δυσκολέψει την κατανόηση του κώδικα. Συνήθως, όταν χρειάζεστε περίπλοκες συνθήκες, είναι καλύτερο να χρησιμοποιήσετε λογικούς τελεστές (όπως το “and”, “or”, “not”) και τονισμένες συνθήκες.

Αντί να χρησιμοποιείτε πολλαπλά επίπεδα εμφωλευμένων if statements, μπορείτε να χρησιμοποιήσετε σύνθετες συνθήκες που συνδυάζουν πολλές συνθήκες με λογικούς τελεστές. Έτσι, μπορείτε να διατηρήσετε τον κώδικα πιο συμπαγή και ευανάγνωστο.

Για παράδειγμα, αντί να γράφετε:

if condition1:
    if condition2:
        # Κώδικας

Μπορείτε να γράψετε:

if condition1 and condition2:
    # Κώδικας

Αυτή η προσέγγιση μπορεί να καταστήσει τον κώδικα πιο ευανάγνωστο και ευκολότερο στη συντήρηση.

Στην Python, οι δηλώσεις “if” πρέπει να έχουν κάποιο περιεχόμενο. Ωστόσο, αν για οποιονδήποτε λόγο χρειάζεστε μια δήλωση “if” χωρίς περιεχόμενο, μπορείτε να χρησιμοποιήσετε τη λέξη-κλειδί “pass” για να αποφύγετε την πρόκληση σφάλματος. Η δήλωση “pass” είναι μια τεχνητή εντολή που δεν κάνει τίποτα και χρησιμοποιείται ως προσωρινή συμπλήρωση, επιτρέποντάς σας να αγνοήσετε τη δήλωση “if” χωρίς να προκληθεί σφάλμα.

[adinserter block=”2″]

Η δήλωση “pass” χρησιμοποιείται ως μια κενή εντολή στην Python. Απλά περνά πάνω από την εκτέλεση και δεν προσθέτει κάποια λειτουργικότητα. Χρησιμοποιείται συχνά ως προσωρινή συντακτική κατασκευή όταν χρειάζεστε μια εντολή στον κώδικα σας, αλλά δεν θέλετε να προσθέσετε κάποιον συγκεκριμένο κώδικα ή λειτουργία σε αυτήν τη στιγμή. Ουσιαστικά, η δήλωση “pass” σας επιτρέπει να παρακάμψετε την απαίτηση ενός κώδικα σε ένα σημείο όπου η σύνταξη απαιτεί μια εντολή, αλλά δεν χρειάζεται να γίνει τίποτα.

Εδώ έχουμε ένα παράδειγμα χρήσης της δήλωσης “pass”:

for i in range(5):
    if i == 3:
        pass  # Παράβλεψη της εκτέλεσης του εσωτερικού μπλοκ κώδικα χρησιμοποιώντας την εντολή pass
    else:
        print(i)  # Εκτύπωση της τιμής της μεταβλητής i αν η συνθήκη i == 3 δεν ισχύει

Στο παραπάνω παράδειγμα, η δήλωση “pass” χρησιμοποιείται για να αγνοηθεί η συγκεκριμένη περίπτωση (όπου i ισούται με 3) και να συνεχιστεί η εκτέλεση του κώδικα. Όταν η συνθήκη είναι αληθής, δεν εκτελείται καμία ενέργεια, αλλά ο κώδικας συνεχίζει να εκτελείται κανονικά στη συνέχεια.

5 Ιουνίου, 2023
top
error: Content is protected !!
Μετάβαση σε γραμμή εργαλείων