Test de multiple
Résolu
Bonjour,
Je débute dans le python et je veux tester les multiples. J'ai trouvé la manière de le faire (avec
ou au contraire :
J'ai essayé et ça ne fonctionne pas, je ne sais pas si c'est une erreur qui vient de moi ou si ce n'est juste pas possible de cette manière.
Voilà c'est juste une petite curiosité, merci d'avance
Je débute dans le python et je veux tester les multiples. J'ai trouvé la manière de le faire (avec
%), mais je me suis demandé, si c'était possible avec ça :
variable = x variable1 = variable/10 if type(variable1) == int #Si c'est un multiple de 10
ou au contraire :
if type(variable1) == float #Si ce n'est pas un multiple de 10
J'ai essayé et ça ne fonctionne pas, je ne sais pas si c'est une erreur qui vient de moi ou si ce n'est juste pas possible de cette manière.
Voilà c'est juste une petite curiosité, merci d'avance
A voir également:
- Test de multiple
- Test performance pc - Guide
- Test disque dur - Télécharger - Informations & Diagnostic
- Test steam deck oled - Guide
- Test composant pc - Guide
- Test batterie pc - Guide
2 réponses
Bonsoir, si le modulo existe c'est qu'il est super utile et sert justement à éviter de partir dans des complications inutiles de calculs.
Tu peux toujours t'amuser à faire
Puisqu'en python
Tu peux toujours t'amuser à faire
for x in range(10, 21): r = x / 10 ir = int(r) if r == ir: print('%i est un multiple de 10' % x)
Puisqu'en python
1.0 == 1
Bonjour,
Pour ce genre de question, le plus simple est de tester dans ton interpréteur python (ou vérifier avec des
En python2
Ça ne marchera pas, car l'opérateur
En python3
Ça ne marchera pas, car l'opérateur
Conclusion
Comme tu l'as dit, il faut bien utiliser l'opérateur
Bonne chance
Pour ce genre de question, le plus simple est de tester dans ton interpréteur python (ou vérifier avec des
En python2
Ça ne marchera pas, car l'opérateur
/retourne un objet du type de l'opérande de gauche (comme en C). Ainsi, si ton numérateur est un
int, tu obtiens un
intdans tous les cas.
(mando@aldur) (~) $ python
Python 2.7.16+ (default, Jul 8 2019, 09:45:29)
[GCC 8.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> type(13/10)
<type 'int'>
>>> type(100/10)
<type 'int'>
En python3
Ça ne marchera pas, car l'opérateur
/retourne toujours un
float.
(mando@aldur) (~) $ python3
Python 3.7.4 (default, Jul 11 2019, 10:43:21)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> type(13/10)
<class 'float'>
>>> type(100/10)
<class 'float'>
>>>
Conclusion
Comme tu l'as dit, il faut bien utiliser l'opérateur
%pour répondre à cette question.
>>> (13 % 10) == 0
False
>>> (100 % 10) == 0
True
Bonne chance