Dans la section précédente, nous avons abordé le branchement par instruction if en utilisant une condition. Par exemple:
>>> 5 == 5
True
>>> 5 != 5
False
>>> 5 != 4
True
>>> 5 > 4
True
>>> 5 >= 5
True
>>> 5 > 5
False
Cependant, il existe des conditions plus compliquées. Par exemple, "quand a et b sont égaux et c et d sont également égaux". Je vais aborder la combinaison de ces conditions.
Si la condition A et la condition B sont remplies et ** les deux sont remplies ** (c'est-à-dire que les deux sont ** Vrai **), alors ** Vrai **.
Entrez le code suivant dans la ** console Python **.
>>> a = 1
>>> b = -1
>>> a > 0
True
>>> b > 0
False
>>> a > 0 and b > 0
False
Dans ce qui précède, ** a> 0 ** remplit la condition, mais ** b> 0 ** ne le fait pas. Par conséquent, ** a> 0 et b> 0 ** devient ** False ** car ** les deux ne sont pas satisfaits **.
Actuellement, seules deux conditions sont répertoriées, mais même si l'opération et est effectuée pour les trois conditions, elle sera ** True ** si les trois conditions sont remplies.
Le tableau ci-dessous résume l'opération AND.
Condition A | Condition B | Condition AandCondition B |
---|---|---|
True | True | True |
True | False | False |
False | True | False |
False | False | False |
Lorsqu'il y a la condition A et la condition B, si l'une ou l'autre ** est satisfaite ** (c'est-à-dire que l'une ou l'autre est ** True **), elle sera ** True **.
Entrez le code suivant dans la ** console Python **.
>>> a = 1
>>> b = -1
>>> a > 0
True
>>> b > 0
False
>>> a > 0 or b > 0
True
Dans ce qui précède, ** a> 0 ** remplit la condition, mais ** b> 0 ** ne le fait pas. Cependant, dans le cas de l'opération OR, ** a> 0 ou b> 0 ** devient ** True ** car il suffit de satisfaire l'un ou l'autre **.
Le tableau ci-dessous résume l'opération OR.
Condition A | Condition B | Condition AandCondition B |
---|---|---|
True | True | True |
True | False | True |
False | True | True |
False | False | False |
Utilisé lorsque ** le refuse ** lorsque la condition A est présente.
Entrez le code suivant dans la ** console Python **.
>>> a = 1
>>> a > 0
True
>>> not a > 0
False
Tout d'abord, ** a> 0 ** est ** 1> 0 **, donc ** True **. Cependant, dans le cas d'une opération NOT, il est ** négatif **, donc le contraire est vrai, ce qui entraîne ** False **.
Condition A | notCondition A |
---|---|
True | False |
False | True |
Créons en fait un programme d'instruction if qui combine des conditions. Le programme de cette fois est le suivant.
Entrez le nombre de mois de 1 à 12, "Printemps" pour mars-mai, "été" pour juin-août, "automne" pour septembre-novembre, 12 Du lundi au février, créez un programme qui affiche "C'est l'hiver". De plus, si un nombre différent de 1 à 12 est entré, veuillez afficher "Le mois n'existe pas".Créons en fait un programme. Créez un fichier nommé 05-02-01.py </ font> dans le dossier chap05 </ font> et entrez le code suivant.
05-02-01.py
month = int(input('Veuillez saisir le nombre de mois (1-12):'))
if month >= 3 and month <= 5:
print('C'est le printemps')
elif month >= 6 and month <= 8:
print('C'est l'été')
elif month >= 9 and month <= 11:
print('C'est l'automne')
elif month == 12 or month <= 2:
print('C'est l'hiver')
else:
print('Ce mois n'existe pas.')
05-02-01.py Résultat d'exécution
[Résultat de l'exécution] </ font> Veuillez saisir le nombre de mois (1-12): 7 </ font> C'est l'été
Expliquons.
Tout d'abord, entrez le nombre de mois, puis le traitement dans l'instruction if qui remplit l'une des conditions est exécuté. Depuis que j'ai entré ** 7 ** cette fois, cela s'applique à ** mois> = 6 et mois <= 8 **, donc le traitement dans l'instruction if est exécuté et "C'est l'été" s'affiche.
Est-il possible de changer la condition de ** mois> = 6 et mois <= 8 ** en ** 6 <= mois <= 8 **? Une telle notation est en fait possible. Améliorons le programme 05-02-01.py </ font> comme suit et exécutons-le.
.05-02-01.py
month = int(input('Veuillez saisir le nombre de mois (1-12):'))
if 3 <= month <= 5:
print('C'est le printemps')
elif 6 <= month <= 8:
print('C'est l'été')
elif 9 <= month <= 11:
print('C'est l'automne')
elif month == 12 or 1 <= month <= 2:
print('C'est l'hiver')
else:
print('Ce mois n'existe pas.')
05-02-01.py Résultat d'exécution
[Résultat de l'exécution] </ font> Veuillez saisir le nombre de mois (1-12): 1 </ font> C'est l'hiver
Si quoi que ce soit, je pense qu'il est plus facile de voir les conditions du format écrites dans cette plage. Cependant, la condition à décrire dans la plage actuelle est ** Python uniquement **. Veuillez noter que le langage C et le langage Java d'autres langages ne peuvent pas être écrits dans une plage.
Nous avons préparé des exercices. Veuillez essayer de le résoudre. De plus, veuillez utiliser le nom de fichier spécifié dans [] et le créer dans chap05 </ font>. Vous pouvez spécifier n'importe quel nom de variable que vous souhaitez. [05-02-p1.py] [1] Entrez votre taille (cm) et votre poids (kg) et créez un programme pour trouver l'IMC. De plus, à partir du résultat de l'IMC, veuillez l'afficher à l'écran en fonction des conditions suivantes.
Valeur IMC | Contenu de sortie |
---|---|
18.Moins de 5 | Sorties "trop fines" |
18.5 ou plus 25.Moins de 0 | Sorties "poids normal" |
25.0 ou plus | Sortie "Je suis obèse" |
05-02-p1.py résultat de l'exécution
[Résultat de l'exécution] </ font> Veuillez entrer votre taille (cm): 184 </ font> Veuillez entrer votre poids (kg): 77,9 </ font> Poids standard
Cette fois, nous avons examiné la syntaxe de contrôle qui combine les conditions. Cependant, si vous écrivez des conditions trop longues, il sera difficile à lire lorsque vous maintiendrez le programme plus tard, alors gardez-le au minimum nécessaire.
Cette opération AND, OR, NOT est similaire à l'opération set apparaissant dans l'ensemble du "Chapter 4-09". Je vais. Vérifie s'il te plaît.