Je voulais faire une simple calculatrice de racine carrée.Python Calculatrice de racine carrée Erreur
num = input('Enter a number and hit enter: ')
if len(num) > 0 and num.isdigit():
new = (num**0.5)
print(new)
else:
print('You did not enter a valid number.')
Il ne semble pas comme si je l'ai fait quelque chose de mal, cependant, lorsque je tente d'exécuter le programme et après je entrer un numéro, je suis confronté avec le message d'erreur suivant:
Traceback (most recent call last):
File "/Users/username/Documents/Coding/squareroot.py", line 4, in <module>
new = (num**0.5)
TypeError: unsupported operand type(s) for ** or pow(): 'str' and 'float'
Process finished with exit code 1
Vous vérifiez attentivement si l'entrée * pourrait * être converti en un numéro, puis * ne se soucient pas vraiment de le faire *! – jonrsharpe
Aussi, des nombres comme '1.5' ou' 1E10' ne seront pas valides - pourquoi? La méthode pythonique consiste à essayer de convertir l'entrée en float et d'imprimer le message d'erreur seulement lorsqu'une exception se produit. –
Copie possible de [TypeError: type (s) d'opérande non pris en charge pour -: 'str' et 'int'] (http://stackoverflow.com/questions/2376464/typeerror-unsupported-operand-types-for-str-and -int) –