python conditional statements
Una mirada en profunditat a les declaracions condicionals a Python:
Al nostre tutorial anterior, vam discutir els diversos Operadors de Python com utilitzar-los i com accedir-hi juntament amb exemples. Apreneu Python bàsic d'aquesta sèrie de tutorials de Python.
Quan considerem cada dia el nostre escenari en temps real, prenem algunes decisions i, en funció de les decisions preses, prendrem accions posteriors.
Per tant, totes les nostres activitats quotidianes depenen de les decisions que prenem.
També es dóna una situació similar en el llenguatge de programació, en què hem de prendre algunes decisions i, en funció d’això, executarem el programa.
Python proporciona quatre sentències condicionals. En aquest tutorial, aprendrem sobre afirmacions condicionals amb una breu descripció, sintaxi i exemples senzills per facilitar-ne la comprensió.
Què aprendreu:
- Mireu els tutorials de VÍDEO
- Instal·lació de Pycharm
- Enunciats condicionals a Python
- If-else en una línia
- Instruccions If-else en una línia
- Declaracions elif en una línia
- Múltiples condicions a les declaracions if
- Conclusió
- Lectura recomanada
Mireu els tutorials de VÍDEO
Instruccions condicionals a Python: If_else, elif, Nested if:
Instruccions condicionals a la instal·lació de Python i PyCharm:
Instal·lació de Pycharm
Pycharm és una eina de codi obert gratuït que està disponible en diferents plataformes com Windows, Linux i Mac.
- Descarregueu l'edició de la comunitat Pycharm des de l'enllaç següent Pycharm .
- Seguiu les instruccions que apareixen a la pantalla per instal·lar Pycharm.
- Un cop instal·lat PyCharm, creeu un projecte.
- Per crear un projecte, aneu a Fitxer => Projecte nou => proporcioneu el nom del projecte i feu clic a crear.
Enunciats condicionals a Python
Als llenguatges de programació, la majoria de les vegades hem de controlar el flux d’execució del vostre programa, només voleu executar un conjunt d’instruccions si es compleix la condició donada i un conjunt d’instruccions diferent quan no es compleix. Això també l’anomenem declaracions de control o declaracions de presa de decisions.
Les declaracions condicionals també es coneixen com a declaracions de presa de decisions. Utilitzem aquestes afirmacions quan volem executar un bloc de codi quan la condició donada és certa o falsa.
A Python podem aconseguir la presa de decisions mitjançant les afirmacions següents:
- Si afirmacions
- Enunciats if-else
- Declaracions d'Elif
- Instruccions imbricades if i if-else
- Escala Elif
En aquest tutorial, discutirem totes les afirmacions en detall amb alguns exemples en temps real.
# 1) Enunciats If
Si la sentència és una de les sentències condicionals més utilitzades en la majoria dels llenguatges de programació. Decideix si cal executar determinades declaracions o no. Si la sentència comprova una condició determinada, si la condició és certa, s'executarà el conjunt de codi present dins del bloc if.
La condició If avalua una expressió booleana i executa el bloc de codi només quan l'expressió booleana es converteix en CERT.
Sintaxi:
If (Boolean expression): Block of code #Set of statements to execute if the condition is true
Aquí, la condició s'avaluarà a una expressió booleana (veritable o falsa). Si la condició és certa, llavors s'executarà la sentència o el programa present dins del bloc if i si la condició és falsa, no s'executaran les sentències o el programa presents dins del bloc if.
Vegem com es veu en un diagrama de flux.
Si observeu el diagrama de flux anterior, primer el controlador arribarà a una condició if i avaluarà la condició si és cert, llavors s'executaran les sentències, en cas contrari s'executarà el codi present fora del bloc.
Vegem alguns exemples d’afirmacions if.
Exemple: 1
Num = 5 If(Num <10): print(“Num is smaller than 10”) print(“This statements will always be executed”)
Sortida: El nombre és inferior a 10.
Aquestes declaracions sempre s’executaran.
Sortida:
quins tipus d'aplicació provem
A l'exemple anterior, vam declarar una variable anomenada 'Num' amb el valor 5 i a la sentència if comprovem si el nombre és inferior a 10 o no, si la condició és certa, es farà un conjunt de sentències dins del bloc if ser executat.
Exemple: 2
a = 7 b = 0 if (a > b): print(“a is greater than b”)
Sortida:
a és més gran que b
A l'exemple anterior, comprovem la relació entre a i b utilitzant l'operador major que (>) a la condició if. Si a és superior a b, s’imprimirà ‘a és superior a b’.
Exemple: 3
a = 7 b = 0 if (b Sortida:
B és més gran que a
Exemple: 4
a = 7 b = 0 if(a): print(“true”)
Sortida:
cert
Si observeu, en l'exemple anterior, no estem utilitzant ni avaluant cap condició a la sentència if. Recordeu sempre que en qualsevol llenguatge de programació, l’enter positiu es tractarà com a valor veritable i un enter inferior a 0 o igual a 0 es tractarà com a fals.
Aquí el valor de a és 7, que és positiu, per tant, imprimeix cert a la sortida de la consola.
Exemple: 5
if (‘python’ in (‘Java’, ‘python’, ‘C#’)): print(“true”)
Sortida:
cert
Aquí comprovem si l’element ‘python’ està present o no a la llista donada. 'Python' és present a la llista donada, per tant, imprimeix true.
Prenguem un exemple en temps real en què utilitzarem la sentència if.
Per exemple , heu escrit un examen per obtenir una puntuació total de 100 i si la vostra puntuació és superior o igual a 60, se us considerarà PASSAT a l’examen.
Escrivim el codi.
Exemple: 6
passing_Score = 60 my_Score = 67 if(my_Score >= passing_Score): print(“Congratulations!!!”) print(“You are passed in the exam”)
Sortida:
Enhorabona !!!
Heu aprovat l’examen
Recordeu fer servir l'operador (:) al final de la línia if, perquè qualsevol que sigui el codi que escriviu després de l'operador de dos punts serà part de si el bloc i la sagnia són molt importants a Python.
Exemple: 7
passing_Score = 60 my_Score = 67 if(my_Score >= passing_Score): print(“You are passed in the exam”) print(“Congratulations!!!”)
Sortida:
Heu aprovat l’examen
Enhorabona !!!
Aquí, la instrucció print ('Enhorabona !!!') sempre s'executarà encara que la condició donada sigui certa o falsa.
El problema amb el codi anterior és que la sentència ‘imprimir (“ Felicitats !!! ”)” sempre s’executarà fins i tot si la condició s’avalua com a veritable o falsa. Però en temps real, si aproveu l'examen o suspeneu l'examen, el sistema dirà Felicitats !!!.
Per evitar aquest pitó, es proporciona una sentència condicional anomenada if-else.
# 2) Instruccions If-else
La declaració en si mateixa indica que si una condició determinada és certa, executeu les sentències presents dins del bloc if i si la condició és falsa, executeu el bloc else.
Un altre bloc només s’executarà quan la condició es converteixi en falsa, aquest és el bloc on realitzareu algunes accions quan la condició no sigui certa.
La sentència If-else avalua l'expressió booleana i executa el bloc de codi present dins del bloc if si la condició esdevé TRUE i executa un bloc de codi present al bloc else si la condició es converteix en FALSA.
Sintaxi:
if(Boolean expression): Block of code #Set of statements to execute if condition is true else: Block of code #Set of statements to execute if condition is false
Aquí, la condició s'avaluarà a una expressió booleana (veritable o falsa). Si la condició és certa, s'executaran les sentències o el programa presents dins del bloc if i, si la condició és falsa, s'executaran les sentències o el programa present dins del bloc else.
Vegem el diagrama de flux de if-else
Si observeu el diagrama de flux anterior, primer el controlador arribarà a si condició i avaluarà la condició si és cert i després s’executaran les sentències de si bloc en cas contrari s’executarà el bloc i posteriorment la resta del codi present fora si -else bloc s'executarà.
Exemple: 1
num = 5 if(num > 10): print(“number is greater than 10”) else: print(“number is less than 10”) print(“This statement will always be executed”)
Sortida:
el nombre és inferior a 10.
Aquesta sentència sempre s’executarà.
Sortida:
A l'exemple anterior, hem declarat una variable anomenada 'num' amb el valor 5 i a la sentència if comprovem si el nombre és superior a 5 o no.
Si el nombre és superior a 5, s'executarà el bloc de codi dins del bloc if i, si falla la condició, s'executarà el bloc de codi present dins del bloc else.
Exemple: 2
a = 7 b = 0 if(a > b): print(“a is greater than b”) else: print(“b is greater than a”)
Sortida:
a és més gran que b
En el codi anterior, si a és superior a b, s'executaran les sentències presents dins del bloc if i s'ignoraran les sentències presents dins del bloc else.
Exemple: 3
a = 7 b = 0 if (a Sortida:
b és més petit que a
En el codi anterior, a és més petit que b, per tant, s'executaran sentències presents dins del bloc else i s'ometran les sentències presents dins del bloc if.
Prenem ara un exemple en temps real.
Exemple: 4
passing_Score = 60 my_Score = 67 if(my_Score >= passing_Score): print(“Congratulations!!!”) print(“You are passed in the exam”) else: print(“Sorry!!!”) print(“You are failed in the exam, better luck next time”)
Sortida:
Enhorabona !!!
Heu aprovat l’examen
Exemple: 5
passing_Score = 60 my_Score = 47 if(my_Score >= passing_Score): print(“Congratulations!!!”) print(“You are passed in the exam”) else: print(“Sorry!!!”) print(“You are failed in the exam, better luck next time”)
Sortida:
Ho sento!!!
No heu passat l’examen, millor sort la propera vegada.
# 3) declaracions elif
A Python, tenim una declaració condicional més anomenada declaracions elif. La declaració Elif s'utilitza per comprovar diverses condicions només si la condició donada és falsa. És similar a una afirmació if-else i l’única diferència és que en else no comprovarem l’estat, però a elif sí que ho comprovarem.
Les declaracions Elif són similars a les afirmacions if-else, però les declaracions Elif avaluen múltiples condicions.
Sintaxi:
if (condition): #Set of statement to execute if condition is true elif (condition): #Set of statements to be executed when if condition is false and elif condition is true else: #Set of statement to be executed when both if and elif conditions are false
Exemple: 1
num = 10 if (num == 0): print(“Number is Zero”) elif (num > 5): print(“Number is greater than 5”) else: print(“Number is smaller than 5”)
Sortida:
El nombre és superior a 5
Sortida:
A l'exemple anterior hem declarat una variable anomenada 'num' amb el valor 10, i a la sentència if comprovem la condició si la condició esdevé certa. A continuació, s'executarà el bloc de codi present dins de la condició if.
Si la condició esdevé falsa, comprovarà la condició elif si la condició es converteix en certa, llavors s'executarà un bloc de codi present dins de la sentència elif.
Si és fals, s'executarà un bloc de codi present dins de la sentència else.
Exemple: 2
num = -7 if (num > 0): print(“Number is positive”) elif (num <0): print(“Number is negative”) else: print(“Number is Zero”)
Sortida:
els millors desenvolupadors de jocs per treballar
El nombre és negatiu
En l'exemple anterior, primer assignem el valor 7 a una variable anomenada num. El controlador arribarà a la sentència if i avaluarà l'expressió booleana num> 0, però el nombre no és superior a zero, per tant, si s'omet el bloc.
Com si la condició s'avalués com a falsa, el controlador arribarà a la declaració elif i avaluarà l'expressió booleana num<0, hence in our case number is less than zero hence ‘Number is negative’ is printed.
En cas que tant la condició if com elif siguin avaluades com a falses, s'executarà un conjunt d'afirmacions presents dins del bloc else.
# 4) Instruccions imbricades if-else
Les sentències if-else imbricades volen dir que hi ha una sentència if o una sentència if-else dins d'un altre bloc if o if-else. Python també proporciona aquesta característica, que al seu torn ens ajudarà a comprovar diverses condicions en un programa determinat.
Una sentència if present dins d'una altra sentència if que es troba dins d'una altra sentència if, etc.
Anidat si sintaxi:
if(condition): #Statements to execute if condition is true if(condition): #Statements to execute if condition is true #end of nested if #end of if
La sintaxi anterior indica clarament que el bloc if contindrà un altre bloc if si, etc. Si el bloc pot contenir el número 'n' del bloc de si dins.
Exemple: 1
num = 5 if(num >0): print(“number is positive”) if(num<10): print(“number is less than 10”)
Sortida:
el nombre és positiu
el nombre és inferior a 10
Sortida:
A l'exemple anterior, hem declarat una variable anomenada 'num' amb el valor 5.
En primer lloc, comprovarà la primera sentència if si la condició és certa, després el bloc de codi present dins de la primera sentència if s’executarà, comprovarà la segona sentència if si la primera sentència true és certa, etc.
Exemple: 2
num = 7 if (num != 0): if (num > 0): print(“Number is greater than Zero”)
Sortida:
El nombre és superior a zero
Aquí, el controlador comprovarà si el número donat no és igual a Zero o no, si el nombre no és igual a zero, llavors introdueix el primer bloc if i, a continuació, al segon bloc si comprovarà si el nombre és superior a zero o no, si és cert, el control entra en el bloc niu si executa les sentències i surt del bloc i finalitza el programa.
Exemple: 3
if (‘python’ in (‘Java’, ‘python’, ‘C#’)): print(“Python is present in the list”) if (‘C#’ in (‘Java’, ‘python’, ‘C#’)): print(“Java is present in the list”) if (‘C#’ in (‘Java’, ‘python’, ‘C#’)): print(“C# is present in the list”)
Sortida:
Python és present a la llista
Java és present a la llista
C # és present a la llista
Sintaxi imbricada if-else:
if(condition): #Statements to execute if condition is true if(condition): #Statements to execute if condition is true else: #Statements to execute if condition is false else: #Statements to execute if condition is false
Aquí hem inclòs el bloc if-else dins d’un bloc if, també podeu incloure el bloc if-else dins del bloc else.
Exemple: 3
num = -7 if (num != 0): if (num > 0): print(“Number is positive”) else: print(“Number is negative”) else: print(“Number is Zero”)
Sortida:
El nombre és negatiu
# 5) Escala elif
Hem vist sobre les afirmacions elif, però què és aquesta escala elif. Com el seu propi nom suggereix, un programa que conté una escala d'afirmacions elif o declaracions elif que s'estructuren en forma d'escala.
Aquesta afirmació s’utilitza per provar diverses expressions.
Sintaxi:
if (condition): #Set of statement to execute if condition is true elif (condition): #Set of statements to be executed when if condition is false and elif condition is true elif (condition): #Set of statements to be executed when both if and first elif condition is false and second elif condition is true elif (condition): #Set of statements to be executed when if, first elif and second elif conditions are false and third elif statement is true else: #Set of statement to be executed when all if and elif conditions are false
Exemple: 1
my_marks = 89 if (my_marks <35): print(“Sorry!!!, You are failed in the exam”) elif(my_marks < 60): print(“Passed in Second class”) elif(my_marks> 60 and my_marks <85): print(“Passed in First class”) else: print(“Passed in First class with distinction”)
Sortida:
Aprovat a primera classe amb distinció
L'exemple anterior descriu l'escala elif. En primer lloc, el control introdueix la sentència if i avalua la condició si la condició és certa, aleshores el conjunt d’instruccions presents dins del bloc if s’executarà en cas contrari, s’ometrà i el controlador arribarà al primer bloc elif i avaluarà la condició.
El procés similar continuarà per a totes les sentències elif restants i en cas que totes les condicions if i elif siguin avaluades com a falses, s'executarà el bloc else.
If-else en una línia
A Python, podem escriure sentències if, enunciats if-else i enunciats elif en una línia sense preocupar-nos de la sagnia.
Enunciat If en una línia
Sabem que podem escriure si les afirmacions es mostren a continuació
Sintaxi:
if (condition): #Set of statements to execute if condition is true
A Python, és permissible escriure el bloc anterior en una línia, que és similar al bloc anterior.
Sintaxi:
if (condition): #set of statements to execute if condition in true
També pot haver-hi diverses afirmacions, només cal separar-les per un punt i coma (;)
Sintaxi:
if (condition): statement 1; statement 2; statement 3;…;statement n
Si la condició és certa, executeu la sentència 1, la sentència 2 i així successivament fins a la sentència n.
En cas que la condició sigui falsa, no s'executarà cap de les sentències.
Exemple: 1
num = 7 if (num > 0): print(“Number is greater than Zero”)
Sortida:
El nombre és superior a zero
Exemple: 2
if (‘y’ in ‘Python’): print(‘1’); print(‘2’); print(‘3’)
Sortida:
1
2
3
Instruccions If-else en una línia
Sintaxi:
if (condition): #Set of statement to execute if condition is true else: #Set of statement to execute if condition is false
El bloc if-else anterior també es pot escriure com es mostra a continuació.
Sintaxi:
if (condition): #Set of statement to execute if condition is true else: #Set of statement to execute if condition is false
També pot haver-hi diverses afirmacions, només cal separar-les per un punt i coma (;)
Sintaxi:
if (condition): statement 1; statement 2; statement 3;…;statement n else: statement 1; statement 2; statement 3;…;statement n
Exemple: 1
num = 7 if (num <0): print(“Number is greater than Zero”) else: print(“Number is smaller than Zero”)
Sortida:
El nombre és menor que Zero
Exemple: 2
if (‘a’ in ‘fruits’): print(“Apple”); print(“Orange”) else: print(“Mango”); print(“Grapes”)
Sortida:
Mango
Raïm
Declaracions elif en una línia
Sintaxi:
if (condition): #Set of statement to execute if condition is true elif (condition1): #Set of statement to execute if condition1 is true else: #Set of statement to execute if condition and condition1 is false
El bloc elif anterior també es pot escriure com es mostra a continuació.
Sintaxi:
if (condition): #Set of statement to execute if condition is true elif (condition1): #Set of statement to execute if condition1 is true else: #Set of statement to execute if condition and condition1 is false
També pot haver-hi diverses afirmacions, només cal separar-les per un punt i coma (;)
Sintaxi:
if (condition): statement 1; statement 2; statement 3;…;statement n elif (condition): statement 1; statement 2; statement 3;…;statement n else: statement 1; statement 2; statement 3;…;statement n
Exemple: 1
num = 7 if (num <0): print(“Number is smaller than Zero”) elif (num> 0): print(“Number is greater than Zero”) else: print(“Number is Zero”)
Sortida:
El nombre és superior a zero
Exemple: 2
if (‘a’ in ‘fruits’): print(“Apple”); print(“Orange”) elif (‘u’ in ‘fruits’): print(“Mango”); print(“Grapes”) else: print(“No fruits available”)
Sortida:
Mango
Raïm
Múltiples condicions a les declaracions if
No és que només pugueu escriure una condició dins d’una sentència if, també podem avaluar diverses condicions en una sentència if com la següent.
Exemple: 1
num1 = 10 num2 = 20 num3 = 30 if (num1 == 10 and num2 == 20 and num3 == 30): print(“All the conditions are true”)
Sortida:
Totes les condicions són certes
Aquí, a la sentència if comprovem diverses condicions mitjançant l’operador AND, el que significa que si totes les condicions són certes només quan s’executaran les sentències dins d’un bloc if.
També podem especificar els operadors OR.
Exemple: 2
fruitName = “Apple” if (fruitName == “Mango” or fruitName == “Apple” or fruitName == “Grapes”): print(“It’s a fruit”)
Sortida:
És una fruita
Aquí, en una sentència de tres condicions, només es compleix una, ja que és la regla de l’operador OR. Si alguna condició és certa, la condició es farà veritable i s'executarà la sentència present dins del bloc if.
Considerem un escenari en temps real per trobar el nombre de dies presents en un mes i sabem que durant un any bixest el nombre de dies canviarà. Ho veurem de manera programàtica mitjançant afirmacions if, elif i else.
Exemple: 1
currentYear = int(input(“Enter the year: ”)) month = int(input(“Enter the month: ”)) if ((currentYear % 4) == 0 and (currentYear % 100) != 0 or (currentYear % 400) == 0): print (“Leap Year”) if (month == 1 or month == 3 or month == 5 or month == 7 or month == 8 or month == 10 or month == 12): print (“There are 31 days in this month”) elif (month == 4 or month == 6 or month == 9 or month == 11): print(“There are 30 days in this month”) elif (month == 2): print(“There are 29 days in this month”) else: print(“Invalid month”) elif ((currentYear % 4) != 0 or (currentYear % 100) != 0 or (currentYear % 400) != 0): print (“Non Leap Year”) if (month == 1 or month == 3 or month == 5 or month == 7 or month == 8 or month == 10 or month == 12): print (“There are 31 days in this month”) elif (month == 4 or month == 6 or month == 9 or month == 11): print(“There are 30 days in this month”) elif (month == 2): print(“There are 28 days in this month”) else: print(“Invalid month”) else: print(“Invalid Year”)
Sortida: 1
Introduïu l'any: 2020
Introduïu el mes: 4
Hi ha 30 dies en aquest mes
Sortida: 2
Introduïu l'any: 2020
Introduïu el mes: 1
Hi ha 31 dies en aquest mes
Sortida: 3
Introduïu l'any: 2019
Introduïu el mes: 2
Hi ha 28 dies en aquest mes
Sortida: 4
Introduïu l'any: 2020
Introduïu el mes: 2
Hi ha 29 dies en aquest mes
Conclusió
En aquest tutorial, hem conegut les declaracions condicionals de Python. Aquestes són les afirmacions que alteren el flux de control d'execució del nostre programa.
Tenim diferents tipus d’instruccions condicionals com if, if-else, elif, nested if i nested if-else sentències que controlen l’execució del nostre programa.
Si la sentència avalua una expressió booleana com a veritable o falsa, si la condició és veritable, la sentència dins del bloc if s'executarà en cas que la condició sigui falsa, la sentència present dins del bloc else només s'executarà si heu escrit el bloc else.
Tenim una sentència més anomenada sentència elif on la sentència else es combina amb una sentència if, que s’executa en funció de les sentències if o elif anteriors.
Notes:
- Python proporciona sentències condicionals que són útils per a verificació i validació.
- A Python tenim 2 tipus d’instruccions de bucle que ens ajuden a executar certes sentències o blocs de codi repetidament
- Utilitzem 'while loop' quan no sabem el nombre de vegades que hem d'iterar i si sabem quantes vegades hem d'iterar, llavors 'for loop' és el millor.
- Python proporciona 3 instruccions de control que ajuden a controlar el flux d'execució d'un programa.
Mireu el nostre proper tutorial per obtenir més informació sobre Looping in Python.
Lectura recomanada
- Bucles Python: per a bucles imbricats amb exemples
- Instruccions de control de Python (Python Continue, Break and Pass)
- Tutorial Python per a principiants (entrenament pràctic GRATU PyT en Python)
- Operadors de Python
- Enunciats condicionals Unix: si és així i operadors relacionals
- Variables de Python
- Declaracions condicionals de VBScript: VBScript If, ElseIf, Selecciona majúscules
- Addició d’instruccions condicionals i de bucle a la visualització de paraules clau: tutorial QTP núm. 4