Maison >développement back-end >Tutoriel Python >Pourquoi « int() » génère-t-il une « ValueError : entrée invalide pour la conversion entière » ?
ValueError : entrée non valide pour la conversion d'un entier
Lors de la tentative de conversion d'une chaîne en un entier à l'aide de la fonction int(), une ValueError peut être généré avec le message « littéral invalide pour int() en base 10 : ». Cette erreur signifie que la chaîne fournie n'a pas de représentation valide d'un entier.
Causes et résolution :
Cette erreur se produit généralement lorsque la chaîne d'entrée contient des caractères non numériques, tels que des chaînes vides ('') , des lettres ou des symboles. Pour le résoudre, assurez-vous que la chaîne contient une valeur numérique avant de tenter la conversion.
Par exemple, si vous rencontrez l'erreur avec une chaîne vide, fournissez un nombre valide en entrée :
>>> int('123') # Integer string - no error >>> int('') # Empty string - error
Si l'entrée contient des décimales, convertissez-la d'abord en flottant, puis convertissez-la en entier :
>>> float_var = '55063.000000' >>> int_var = int(float(float_var)) # Convert to float, then integer
De plus, vérifiez que la chaîne d'entrée le fait ne contient pas de caractères non valides comme des espaces, des virgules ou des symboles monétaires. Supprimez ou remplacez ces caractères avant de tenter la conversion.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!