[Python] Chapitre 05-02 Syntaxe de contrôle (combinaison de conditions)

[Python] Chapitre 05-02 Combinaison de conditions

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.

ET opération

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

Opération OU

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

PAS opération

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éer un programme en utilisant une combinaison de conditions

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.

Problème de pratique

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"
  • À l'origine, il est en outre classé dans l'obésité, mais dans un souci de simplicité, il est décrit ci-dessus. L'IMC peut être calculé par la formule suivante. ** IMC = poids (kg) ÷ (taille (m)) 2 </ sup> ** (Astuce: Tout d'abord, changez votre hauteur (cm) en votre taille (m)) </ font> De plus, jusqu'à présent, lors de la conversion d'une chaîne de caractères en une valeur numérique, elle était convertie avec la fonction ** int **, mais comme le poids et la hauteur peuvent être une fraction au lieu d'un entier, la conversion dans un tel cas est la suivante. Convertir avec ** fonction float **. ** poids = flotteur (saisissez ('Veuillez saisir le poids (kg):')) **


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

finalement

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.

Revenir à [Lien de la table des matières]

Recommended Posts