0
votes

Python - Comment utiliser un float dans une déclaration "si x dans la plage"

J'essaie d'écrire une instruction IF qui prend un flottant comme une plage.

Merci. P>

if x > 0 <= 4.4


3 commentaires

si 0 <= x <= 4.4


Quelle sortie souhaitez-vous si x est, disons, 4.45? Vos gammes ne couvrent pas tous les nombres réels non négatifs.


En outre, x> 0 <= 4.4 signifie x> 0 et 0 <= 4.4 , et ce dernier est bien sûr inintéressant. Vous devez utiliser la syntaxe de comparaison chaînée suggérée par @barmar.


3 Réponses :


1
votes

Utilisez xxx

où x est au milieu. C'est équivalent à xxx

plage ne convient pas à cette tâche.


0 commentaires

1
votes

Vous n'avez pas besoin plage () code>. Utilisez simplement des comparaisons et utilisez elif code> de sorte que les plages sont exclusives.

if x < 4.5:
    print('one')
elif x < 8:
    print('two')
elif x < 10:
    print('three')
else:
    print('four')


4 commentaires

Serait-il des problèmes avec des valeurs telles que x = 4,56 ou x = 8,01?


Non, c'est la raison pour laquelle je n'ai pas mis de limites aux deux extrémités des gammes.


4.56 imprimera deux , 8.01 imprimera trois .


Que doit être imprimé lorsque x == 10 ? Ce n'est pas dans la plage 8.1 à 9,9 , mais ce n'est pas > 10 non plus.



0
votes
x = 8.3

if 0 <= x <= 4.4:
    print('one')
if 4.5 <= x <= 8:
    print('two')
if 8.1 <= x <= 9.9:
    print('three')
if x > 10:
    print('four')

0 commentaires