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 : Sélectionner tout - Visualiser dans une fenêtre à part
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.