A voir également:
- Int input python
- Int(input()) - Meilleures réponses
- Int input - Meilleures réponses
- Une formule de calcul débute toujours par le signe - Guide
- Je suis le début de la nuit et la fin du matin ✓ - Forum Loisirs / Divertissements
- A quelle heure debute le soir - Forum Excel
- Je voudrais écrire une lettre ,sur mon pc merci je débute:: ✓ - Forum Imprimante
- Choisir un synthétiseur... pas facile quand on débute! - Forum Création et production musicale
1 réponse
georges97
Messages postés
12716
Date d'inscription
lundi 31 janvier 2011
Statut
Contributeur
Dernière intervention
17 décembre 2024
2 434
27 avril 2016 à 19:15
27 avril 2016 à 19:15
Bonjour,
La fonction int ne convertit pas les nombres réels en entiers. Elle attend que la valeur entrée soit un entier sinon elle renvoie le message d'erreur que vous signalez. Omettez int dans la fonction et il prendra les nombres entiers ou réels, les opérateurs utilisant les deux types et donnant un résultat en réel.
Ci-après un lien précisant les détails de cette question :
https://python.developpez.com/cours/TutoSwinnen/?page=page_7
Cordialement
La fonction int ne convertit pas les nombres réels en entiers. Elle attend que la valeur entrée soit un entier sinon elle renvoie le message d'erreur que vous signalez. Omettez int dans la fonction et il prendra les nombres entiers ou réels, les opérateurs utilisant les deux types et donnant un résultat en réel.
Ci-après un lien précisant les détails de cette question :
https://python.developpez.com/cours/TutoSwinnen/?page=page_7
Cordialement
27 avril 2016 à 19:30
n=int(eval(input()))
et çà a fonctionné...pourquoi?...je ne sais pas
Modifié par jisisv le 4/05/2016 à 20:52
exemple: '
5 mai 2016 à 00:44
input() renvoie en pyhon3 un string (pour des raisons de sécurité).
En effectuant int(input()), tu tentes donc de récupérer la partie entière d'une chaîne de caractère. D'où le message obtenu.
Lorsque tu fais eval(input()), tu demandes à Python d'interpréter la chaîne. Si tu rentres une chaîne sous forme de nombre, ça va le convertir en nombre. Tu pourras donc récupérer sa partie entière.
Note : ce n'est absolument pas la bonne façon de faire. C'est très dangereux.
Je te conseille plutôt : int(float(input()).
Le float() te permettra de convertir la chaîne en flottant. Et le int() récupérera la partie entière.
6 mai 2016 à 14:13
Modifié par fiddy le 5/05/2016 à 00:43
Pas exactement... int() a plusieurs usages selon le type de l'argument.
int sert à renvoyer la partie entière des nombres (cas du float)
Et ça sert également à savoir si la chaîne est un entier (cas du string).