types d’opérandes non pris en charge Python

Les valeurs entières ne peuvent pas être soustraites des valeurs de chaaîne et vice versa. En effet, les chaaînes et les entiers sont des types de données distincts. Si vous essayez de soustraire une chaaîne d’un entier, vous recevez une erreur du type "TypeError: unsupported operand type(s) for -: ‚Äòstr‚Äô et ‚Äòint‚Äô‚".

Dans ce guide, nous parlons de l’importance de cette erreur et pourquoi elle est signalée. Nous passons en revue un exemple pour vous aider à comprendre comment résoudre cette erreur dans votre code.

TypeError : type(s) d’opérande non pris en charge pour - : ‚Äòstr‚Äô et ‚Äòint‚Äô

Contrairement aux autres langages de programmation, la syntaxe Python est fortement typée. Une conséquence de cela est que vous devez modifier les types d’objets, comme les chaaînes et les entiers, si vous souhaitez les traiter comme un type de données différent.

Lorsque vous essayez de soustraire un string pour un entier ou vice versa, Python ne sait pas quoi faire faire. En effet, vous ne pouvez pas soustraire des valeurs de chaaîne.

De même, vous ne pouvez pas ajouter une chaaîne à un entier ou diviser une chaaîne par un entier. Ces opérations renvoient toutes un ou plusieurs types d’opérandes non pris en charge. erreur.

Un exemple de scénario

Nous allons créer une application de dépenses qui suit combien d’argent il restera à quelqu’un sur son budget après avoir effectué un achat. Cette application demande à un utilisateur d’insérer la valeur de chaque achat qu’il effectue. Cela sera soustrait du montant total d’un utilisateur dans son budget.

Pour commencer, demandez à un utilisateur de définir un budget à l’aide de la entrée () méthode :

Nous avons converti cette valeur en un entier en utilisant la méthode int(). Ensuite, nous demandons à un utilisateur de fournir quelques détails sur son achat. Nous leur demandons ce qu’ils ont acheté et combien leur co√ªt d’achat :

81 % des participants ont déclaré qu’ils se sentaient plus confiants quant à leurs perspectives d’emploi en technologie après avoir assisté à un bootcamp. Soyez associé à un bootcamp aujourd’hui.

Le diplômé moyen d’un bootcamp a passé moins de six mois en transition de carrière, du démarrage d’un bootcamp à la recherche de son premier emploi.

Ensuite, nous soustrayons la valeur du "prix" à partir du " budget ". Cela nous indique combien il reste à un utilisateur dans son budget.

Nous le faisons en utilisant l’opérateur de soustraction (-) :

Exécutez notre code pour voir si notre programme fonctionne :

Nous‚Äô J’ai dit à notre programme que notre budget était de 400 $ pour le mois. Nous venons d’acheter un support pour moniteur qui co√ªte 35 $. Notre programme ne parvient pas à calculer notre nouveau budget. Corrigons cette erreur.

La solution

Pour ainsi En cas d’erreur, nous convertissons la valeur de "price" à une chaaîne.

Par défaut, input() renvoie une chaaîne. Nous avons modifié la valeur de "budget" être un entier plus tôt dans notre code. Cependant, nous n’avons pas modifié la valeur de "prix". Cela a pour résultat que notre code soustrait un entier d’une chaaîne, ce qui n’est pas possible.

Python ne peut pas convertir automatiquement une chaaîne en entier car Python est typé statiquement.

Nous résolvons cette erreur en remplaçant le "prix" déclaration avec ce code :

Nous avons entouré l’instruction input() avec int(). Cela rend la valeur stockée dans le "prix" variable un entier. Cela convertit la valeur qu’un utilisateur insère dans notre programme en un entier. Exécutez notre code avec cette ligne de code révisée :

Notre code s’exécute avec succès. Notre code soustrait 35 à 400. Notre programme imprime ensuite à la console combien d’argent il nous reste dans notre budget.

Erreurs similaires

Il existe un certain nombre d’erreurs de "type(s) d’opérande non pris en charge" dans Python.

Ces erreurs signifient la même chose : vous essayez d’effectuer une opération mathématique sur une chaaîne et une valeur numérique. √âtant donné que les chaaînes ne prennent pas en charge les opérations mathématiques, vous rencontrerez une erreur.

Par exemple, vous voyez cette erreur si vous essayez d’ajouter une chaaîne et un entier :

De même, vous voyez cette erreur si vous essayez de trouver le reste d’une chaaîne et un entier :

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method