Probleme : Verifier qu'une variable est bien un entier et pas un caractère
Bonjour à tous,
J'ai réalisé un programme qui affiche pour un entier "m" rentré par l'utilisateur et un flottant "b", une liste donnant les valeurs allant de "b puissance 0" jusqu'à "b puissance (m-1)". Le programme fonctionne et le code est donné ci-dessous.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
def calcul_ma_puissance(m,b):
i=0
puissance=0
for nombre in range(m):
puissance = b**i
i=i+1
liste.append(puissance)
return(liste)
m = int(input())
b = float(input())
liste =[]
if isinstance(m,int) and isinstance(b,float):
calcul_ma_puissance(m,b)
print(liste)
else:
print("Type entré non valide !") |
Cependant, je voudrai que le programme exécute une condition supplémentaire:
Si les valeurs entrées par l'utilisateur ne correspondant pas au type souhaité (par exemple l'utilisation rentre un flottant ou un caractère pour "m" et/ou un entier ou un caractère pour "b"), je souhaiterai que l'ordinateur renvoie un message du type : "Type entré non valide" plutôt que de renvoyer un message d'erreur.
Pour faire cela, il semblerait, que avec Python 3.0, il faille utiliser l'instruction: "isinstance(var,type)", mais je n'arrive pas à modifier mon programme ci-dessus pour que cela fasse l'effet recherché.
Quelqu'un serai-t-il capable de modifier le code en conséquence ? Merci, cela me servira pour d'autres problèmes également.