Python Δηλώσεις υπό όρους: IF…Else, ELIF & Switch Case

Σε τι περιλαμβάνονται οι δηλώσεις υπό όρους Python?

Δήλωση υπό όρους σε Python εκτελούν διαφορετικούς υπολογισμούς ή ενέργειες ανάλογα με το αν ένας συγκεκριμένος περιορισμός Boolean αξιολογείται ως true ή false. Οι δηλώσεις υπό όρους αντιμετωπίζονται από τις δηλώσεις IF στο Python.

Τι είναι Python Αν Δήλωση;

Python εάν Δήλωση χρησιμοποιείται για διαδικασίες λήψης αποφάσεων. Περιέχει ένα σώμα κώδικα που εκτελείται μόνο όταν η συνθήκη που δίνεται στη δήλωση if είναι αληθής. Εάν η συνθήκη είναι ψευδής, τότε εκτελείται η προαιρετική δήλωση else που περιέχει κάποιο κωδικό για τη συνθήκη else.

Όταν θέλετε να δικαιολογήσετε μια συνθήκη ενώ η άλλη συνθήκη δεν είναι αληθής, τότε χρησιμοποιείτε Python αν αλλιώς δήλωση.

Python if Σύνταξη δήλωσης:

if expression
 Statement
else 
 Statement

Python αν…αλλιώς Διάγραμμα ροής

Python Εάν δήλωση

Ας δούμε ένα παράδειγμα του Python αν αλλιώς δήλωση:

Python Εάν δήλωση

#
#Example file for working with conditional statement
#
def main():
	x,y =2,8
	
	if(x < y):
		st= "x is less than y"
	print(st)
	
if __name__ == "__main__":
	main()
  • Γραμμή κώδικα 5: Ορίζουμε δύο μεταβλητές x, y = 2, 8
  • Κωδικός Γραμμή 7: Η δήλωση if in Python ελέγχει την κατάσταση x Οι αληθινοί σε αυτήν την περίπτωση
  • Γραμμή κώδικα 8: Η μεταβλητή st έχει οριστεί σε "x είναι μικρότερο από y".
  • Γραμμή κώδικα 9: Η γραμμική εκτύπωση st θα δώσει την τιμή της μεταβλητής st που είναι "x είναι μικρότερο από y",

Τι συμβαίνει όταν η «αν η προϋπόθεση» δεν πληρούται

Σε αυτό το βήμα, θα δούμε τι συμβαίνει όταν υπάρχει κατάσταση Python δεν συναντά.

Όταν εάν δεν πληρούται η προϋπόθεση

  • Γραμμή κώδικα 5: Ορίζουμε δύο μεταβλητές x, y = 8, 4
  • Κωδικός Γραμμή 7: Η δήλωση if in Python ελέγχει την κατάσταση x Ψευδής σε αυτήν την περίπτωση
  • Γραμμή κώδικα 8: Η μεταβλητή st είναι ΔΕΝ ορίστε το "x είναι μικρότερο από το y".
  • Γραμμή κώδικα 9: Η γραμμή εκτύπωσης st – προσπαθεί να εκτυπώσει την τιμή μιας μεταβλητής που δεν δηλώθηκε ποτέ. Ως εκ τούτου, λαμβάνουμε ένα σφάλμα.

Πώς να χρησιμοποιήσετε το "άλλο όρο"

Η «άλλη συνθήκη» χρησιμοποιείται συνήθως όταν πρέπει να κρίνετε μια δήλωση με βάση την άλλη. Εάν μια συνθήκη πάει στραβά, τότε θα πρέπει να υπάρχει μια άλλη συνθήκη που θα πρέπει να δικαιολογεί τη δήλωση ή τη λογική.

Παράδειγμα:

Πώς να χρησιμοποιήσετε την άλλη συνθήκη

#
#Example file for working with conditional statement
#
def main():
	x,y =8,4
	
	if(x < y):
		st= "x is less than y"
	else:
		st= "x is greater than y"
	print (st)
	
if __name__ == "__main__":
	main()
  • Γραμμή κώδικα 5: Ορίζουμε δύο μεταβλητές x, y = 8, 4
  • Κωδικός Γραμμή 7: Η δήλωση if in Python ελέγχει την κατάσταση x Ψευδής σε αυτήν την περίπτωση
  • Κωδικός Γραμμή 9: Η ροή του ελέγχου προγράμματος πηγαίνει στην άλλη συνθήκη
  • Γραμμή κώδικα 10: Η μεταβλητή st έχει οριστεί σε "x is μεγαλύτερη από εσένα."
  • Γραμμή κώδικα 11: Η γραμμική εκτύπωση st θα δώσει την τιμή της μεταβλητής st που είναι "x είναι μεγαλύτερη από y",

Όταν η "άλλη συνθήκη" δεν λειτουργεί

Μπορεί να υπάρχουν πολλές περιπτώσεις όπου η «άλλη κατάστασή» σας δεν θα σας δώσει το επιθυμητό αποτέλεσμα. Θα εκτυπώσει το λάθος αποτέλεσμα καθώς υπάρχει λάθος στη λογική του προγράμματος. Στις περισσότερες περιπτώσεις, αυτό συμβαίνει όταν πρέπει να δικαιολογήσετε περισσότερες από δύο δηλώσεις ή συνθήκες σε ένα πρόγραμμα.

An παράδειγμα θα σας βοηθήσει καλύτερα να κατανοήσετε αυτήν την έννοια.

Εδώ και οι δύο μεταβλητές είναι ίδιες (8,8) και η έξοδος του προγράμματος είναι "Το x είναι μεγαλύτερο από το y", το οποίο είναι ΛΑΘΟΣ. Αυτό συμβαίνει επειδή ελέγχει την πρώτη συνθήκη (εάν η συνθήκη είναι Python), και αν αποτύχει, τότε εκτυπώνει τη δεύτερη συνθήκη (άλλο συνθήκη) ως προεπιλογή. Στο επόμενο βήμα, θα δούμε πώς μπορούμε να διορθώσουμε αυτό το σφάλμα.

Πότε αλλιώς η συνθήκη δεν λειτουργεί

#
#Example file for working with conditional statement
#
def main():
	x,y =8,8
	
	if(x < y):
		st= "x is less than y"
	else:
		st= "x is greater than y"
	print(st)
	
if __name__ == "__main__":
	main()

Πώς να χρησιμοποιήσετε τη συνθήκη "elif".

Για να διορθώσουμε το προηγούμενο σφάλμα που έγινε από το "alse condition", μπορούμε να χρησιμοποιήσουμε "ελιφ" δήλωση. Με τη χρήση "ElifΣυνθήκη, λέτε στο πρόγραμμα να εκτυπώσει την τρίτη συνθήκη ή δυνατότητα όταν η άλλη συνθήκη πάει στραβά ή λανθασμένη.

Παράδειγμα

Πώς να χρησιμοποιήσετε την κατάσταση elif

#
#Example file for working with conditional statement
#
def main():
	x,y =8,8	
	if(x < y):
		st= "x is less than y"	
	elif (x == y):
		st= "x is same as y"	
	else:
		st="x is greater than y"
	print(st)	
if __name__ == "__main__":
	main()
  • Γραμμή κώδικα 5: Ορίζουμε δύο μεταβλητές x, y = 8, 8
  • Κωδικός Γραμμή 7: Η δήλωση if ελέγχει την συνθήκη x Ψευδής σε αυτήν την περίπτωση
  • Γραμμή κώδικα 10: Η ροή του ελέγχου προγράμματος πηγαίνει στη συνθήκη elseif. Ελέγχει αν το x==y είναι αληθές
  • Γραμμή κώδικα 11: Η μεταβλητή st έχει οριστεί σε "x is ίδιο όπως y. "
  • Κωδικός Γραμμή 15: Το Η ροή του ελέγχου προγράμματος εξέρχεται από τη δήλωση if (δεν θα φτάσει στη δήλωση else). Και εκτυπώστε τη μεταβλητή st. Η έξοδος είναι "x είναι ίδιο με το y" που είναι σωστό

Πώς να εκτελέσετε μια πρόταση υπό όρους με ελάχιστο κώδικα

Σε αυτό το βήμα, θα δούμε πώς μπορούμε να συμπυκνώσουμε τη δήλωση υπό όρους. Αντί να εκτελούμε κώδικα για κάθε συνθήκη ξεχωριστά, μπορούμε να τους χρησιμοποιήσουμε με έναν μόνο κωδικό.

Σύνταξη

A If B else C

Παράδειγμα:

εκτέλεση δήλωσης υπό όρους με ελάχιστο κώδικα

	
def main():
	x,y = 10,8
	st = "x is less than y" if (x < y) else "x is greater than or equal to y"
	print(st)	
if __name__ == "__main__":
	main()
  • Γραμμή κώδικα 2: Ορίζουμε δύο μεταβλητές x, y = 10, 8
  • Γραμμή κώδικα 3: Η μεταβλητή st έχει οριστεί σε "x είναι μικρότερο από y" αν x y μεταβλητή st έχει οριστεί σε "Το x είναι μεγαλύτερο ή ίσο του y."
  • Κωδικός Γραμμή 4: Εκτυπώνει την τιμή του st και δίνει τη σωστή έξοδο
  • Αντί να γράφετε μεγάλο κώδικα για δηλώσεις υπό όρους, Python σας δίνει την ελευθερία να γράφετε κώδικα με σύντομο και συνοπτικό τρόπο.

Python Ένθετη δήλωση if

Το παρακάτω παράδειγμα δείχνει ένθετη δήλωση if Python

total = 100
#country = "US"
country = "AU"
if country == "US":
    if total <= 50:
        print("Shipping Cost is  $50")
elif total <= 100:
        print("Shipping Cost is $25")
elif total <= 150:
	    print("Shipping Costs $5")
else:
        print("FREE")
if country == "AU": 
	  if total <= 50:
	    print("Shipping Cost is  $100")
else:
	    print("FREE")

Καταργήστε το σχόλιο της γραμμής 2 στον παραπάνω κώδικα και σχολιάστε τη γραμμή 3 και εκτελέστε ξανά τον κωδικό

Εναλλαγή δήλωσης υπόθεσης Python

Τι είναι η δήλωση Switch;

Μια δήλωση switch είναι μια δήλωση διακλάδωσης πολλαπλών δρόμων που συγκρίνει την τιμή μιας μεταβλητής με τις τιμές που καθορίζονται στις δηλώσεις case.

Python η γλώσσα δεν έχει εντολή διακόπτη.

Python χρησιμοποιεί λεξικό αντιστοίχιση για την εφαρμογή Switch Case in Python

Παράδειγμα

function(argument){
    switch(argument) {
        case 0:
            return "This is Case Zero";
        case 1:
            return " This is Case One";
        case 2:
            return " This is Case Two ";
        default:
            return "nothing";
    };
};

Για την παραπάνω θήκη Switch in Python

def SwitchExample(argument):
    switcher = {
        0: " This is Case Zero ",
        1: " This is Case One ",
        2: " This is Case Two ",
    }
    return switcher.get(argument, "nothing")


if __name__ == "__main__":
    argument = 1
    print (SwitchExample(argument))

Python 2 Παράδειγμα

Οι παραπάνω κωδικοί είναι Python 3 παραδείγματα, Αν θέλετε να τρέξετε μέσα Python 2, λάβετε υπόψη τον ακόλουθο κώδικα.

# If Statement 
#Example file for working with conditional statement
#
def main():
	x,y =2,8
	
	if(x < y):
		st= "x is less than y"
	print st
	
if __name__ == "__main__":
	main()



# How to use "else condition"
#Example file for working with conditional statement
#
def main():
	x,y =8,4
	
	if(x < y):
		st= "x is less than y"
	else:
		st= "x is greater than y"
	print st
	
if __name__ == "__main__":
	main()



# When "else condition" does not work
#Example file for working with conditional statement
#
def main():
	x,y =8,8
	
	if(x < y):
		st= "x is less than y"
	else:
		st= "x is greater than y"
	print st
	
if __name__ == "__main__":
	main()


# How to use "elif" condition
#Example file for working with conditional statement
#
def main():
	x,y =8,8
	
	if(x < y):
		st= "x is less than y"
	
	elif (x == y):
		st= "x is same as y"
	
	else:
		st="x is greater than y"
	print st
	
if __name__ == "__main__":
	main()


# How to execute conditional statement with minimal code
def main():
	x,y = 10,8
	st = "x is less than y" if (x < y) else "x is greater than or equal to y"
	print st
	
if __name__ == "__main__":
	main()


# Nested IF Statement
total = 100
#country = "US"
country = "AU"
if country == "US":
    if total <= 50:
        print "Shipping Cost is  $50"
elif total <= 100:
        print "Shipping Cost is $25"
elif total <= 150:
	    print "Shipping Costs $5"
else:
        print "FREE"
if country == "AU": 
	  if total <= 50:
	    print "Shipping Cost is  $100"
else:
	    print "FREE"


#Switch Statement
def SwitchExample(argument):
    switcher = {
        0: " This is Case Zero ",
        1: " This is Case One ",
        2: " This is Case Two ",
    }
    return switcher.get(argument, "nothing")


if __name__ == "__main__":
    argument = 1
    print SwitchExample(argument)

Σύνοψη

Δήλωση υπό όρους στο Python αντιμετωπίζεται από τις προτάσεις if και είδαμε διάφορους άλλους τρόπους με τους οποίους μπορούμε να χρησιμοποιήσουμε εντολές υπό όρους όπως Python αν αλλιως εδω.

  • "if condition" – Χρησιμοποιείται όταν χρειάζεται να εκτυπώσετε το αποτέλεσμα όταν μία από τις συνθήκες είναι αληθής ή ψευδής.
  • "alse condition"- χρησιμοποιείται όταν θέλετε να εκτυπώσετε τη δήλωση όταν η μία συνθήκη σας δεν πληροί την απαίτηση
  • "elif condition" - Χρησιμοποιείται όταν έχετε τρίτη πιθανότητα ως αποτέλεσμα. Μπορείτε να χρησιμοποιήσετε πολλαπλές συνθήκες elif για να ελέγξετε για 4th,5th,6th δυνατότητες στον κώδικά σας
  • Μπορούμε να χρησιμοποιήσουμε ελάχιστο κώδικα για να εκτελέσουμε εντολές υπό όρους δηλώνοντας όλες τις συνθήκες σε μία πρόταση για την εκτέλεση του κώδικα
  • Python Εάν η δήλωση μπορεί να είναι ένθετη