l’objet Python int n’est pas inscriptible

Certains objets dans Python sont inscriptibles. Cela signifie qu’ils contiennent, ou peuvent contenir, d’autres objets. Les nombres entiers ne sont pas un objet inscriptible. Ils sont utilisés pour stocker des nombres entiers. Si vous traitez un entier comme un objet inscriptible, une erreur sera générée.

Dans ce guide, nous allons parler de la "erreur de type : ‚Äòint‚Äô l’objet n’est pas inscriptible " erreur et pourquoi elle est déclenchée. Nous allons parcourir un extrait de code avec ce problème pour montrer comment vous pouvez le résoudre dans votre code. Commençons !

Le problème : erreur de type : ‚Äòint‚Äô l’objet n’est pas inscriptible

Nous allons commencer par jeter un ≈ìil à notre message d’erreur :

La première partie de notre message d’erreur, TypeError, indique le type de notre erreur. Une TypeError est une erreur qui est générée lorsque vous essayez d’effectuer une opération sur une valeur qui ne prend pas en charge cette opération. La concaténation d’une chaaîne et d’un entier, par exemple, lève une TypeError.

La deuxième partie de notre message nous informe de la cause.

Ce message est révélateur nous que nous traitons un entier, qui est un nombre entier, comme un objet inscriptible. Les entiers ne sont pas des objets inscriptibles. Uniquement les objets qui contiennent d’autres objets, comme les chaaînes, les listes, tuples, et les dictionnaires, sont inscriptibles.

Laissez‚Äô s disons que vous essayez d’utiliser l’indexation pour accéder à un élément d’une liste :

Ce code renvoie : ProtonMail. Les listes sont indexables, ce qui signifie que vous pouvez utiliser l’indexation pour extraire une valeur d’une liste.

81 % des participants ont déclaré qu’ils se sentaient plus confiants quant à leurs perspectives d’emploi dans le domaine technique après avoir assisté à un bootcamp. Soyez jumelé à 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.

Vous ne pouvez pas utiliser cette même syntaxe sur une valeur non-subscriptible, comme un flottant ou un entier.

Un exemple de scénario

Nous allons écrire un programme qui demande à un utilisateur la date à laquelle son prochain vacances commence et imprime chaque valeur sur une ligne séparée. Ce programme aura une erreur que nous pouvons résoudre.

Commençons par écrire notre programme principal :

Ce programme demande à un utilisateur d’insérer le jour o√π ses vacances commencent à l’aide d’un instruction input(). Ensuite, nous utilisons le découpage pour récupérer les valeurs du mois, du jour et de l’année que l’utilisateur a spécifiées. Ces valeurs sont stockées dans des variables.< br>

Ensuite, nous imprimons les valeurs de ces variables sur la console. Chaque valeur reçoit une étiquette qui indique la partie de la date à laquelle correspond la valeur.

Exécutons notre code :

Réparons cette erreur.

Nous avons converti la valeur de " vacances" en un entier. Cela signifie que nous ne pouvons pas y accéder en utilisant le découpage ou l’indexation. Les entiers ne sont pas indexés comme les chaaînes.

Pour résoudre ce problème, nous pouvons supprimer l’instruction int() de notre code. L’instruction input() renvoie une valeur de chaaîne. Nous pouvons découper cette valeur de chaaîne en utilisant notre code.

Révisons notre déclaration input() :

Maintenant, essayons de exécutez notre code :

Notre code s’exécute avec succès ! Nous n’essayons plus de découper un entier car notre code ne contient pas d’instruction int(). Au lieu de cela, "vacances" est stocké sous forme de chaaîne. Cette chaaîne est découpée en utilisant la syntaxe de découpage.

Conclusion

La "typeerror : ‚Äòint‚Äô l’objet n’est pas inscriptible " une erreur est déclenchée lorsque vous essayez d’accéder à un entier comme s’il s’agissait d’un objet indexable, comme une liste ou un dictionnaire.

Pour résoudre ce problème, assurez-vous que vous n’utilisez pas le découpage ou l’indexation pour accéder aux valeurs dans un entier. Si vous devez effectuer une opération uniquement disponible pour les objets indicibles, comme le découpage ou l’indexation, vous devez d’abord convertir votre entier en chaaîne ou en liste.

Vous êtes maintenant prêt à résoudre ce problème Python TypeError comme un expert !

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