Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

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

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

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

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
if condition1:
statement
if condition2:
statement
if condition1: statement if condition2: statement
if condition1:
    statement
    if condition2:
        statement

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

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

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
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"
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"
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, μπορείτε να χρησιμοποιήσετε σύνθετες συνθήκες που συνδυάζουν πολλές συνθήκες με λογικούς τελεστές. Έτσι, μπορείτε να διατηρήσετε τον κώδικα πιο συμπαγή και ευανάγνωστο.

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

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
if condition1:
if condition2:
# Κώδικας
if condition1: if condition2: # Κώδικας
if condition1:
    if condition2:
        # Κώδικας

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

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
if condition1 and condition2:
# Κώδικας
if condition1 and condition2: # Κώδικας
if condition1 and condition2:
    # Κώδικας

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

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

[adinserter block=”2″]

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

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

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
for i in range(5):
if i == 3:
pass # Παράβλεψη της εκτέλεσης του εσωτερικού μπλοκ κώδικα χρησιμοποιώντας την εντολή pass
else:
print(i) # Εκτύπωση της τιμής της μεταβλητής i αν η συνθήκη i == 3 δεν ισχύει
for i in range(5): if i == 3: pass # Παράβλεψη της εκτέλεσης του εσωτερικού μπλοκ κώδικα χρησιμοποιώντας την εντολή pass else: print(i) # Εκτύπωση της τιμής της μεταβλητής i αν η συνθήκη i == 3 δεν ισχύει
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 !!
Μετάβαση σε γραμμή εργαλείων