l’objet str n’est pas appelable en Python

Des erreurs sont facilement commises lorsque vous nommez des variables. L’une des erreurs les plus courantes est d’appeler une variable "str‚". Si vous essayez d’utiliser la méthode Python avec le même nom dans votre programme, "erreur de type : ‚Äòstr‚Äô l’objet n’est pas appelable " est renvoyé.

Dans ce guide, nous expliquons ce que signifie l’erreur Python et pourquoi elle est déclenchée. Nous passons en revue deux exemples de cette erreur en action afin que vous appreniez comment la résoudre.

Le problème : typeerror : ‚Äòstr‚Äô l’objet n’est pas appelable

Notre message d’erreur est une TypeError. Cela nous indique que nous essayons d’exécuter une opération sur une valeur dont le type de données ne prend pas en charge cette opération spécifique.

Regardez le reste de notre message d’erreur :

Lorsque vous essayez d’appeler un string comme vous le feriez pour une fonction, une erreur est renvoyée. C’est parce que les chaaînes ne sont pas des fonctions. Pour appeler une fonction, vous ajoutez () à la fin d’un nom de fonction.

Cette erreur se produit généralement lorsque vous affectez une variable appelée "str‚" puis essayez d’utiliser la fonction str(). Python interprète "str‚" sous forme de chaaîne et vous ne pouvez pas utiliser la fonction str() dans votre programme.

Regardons deux exemples de scénarios dans lesquels cette erreur s’est produite.

Exemple de scénario : déclarer une variable appelée "str‚"

Nous écrivons un programme qui calcule le nombre d’années qu’un enfant a jusqu’à ce qu’il ait 18 ans. Nous affichons ensuite cette valeur sur la console.

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 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.

Commençons par collectionner l’√¢ge actuel du jeune en utilisant une instruction input() :

Ensuite, nous calculons combien d’années il reste à un jeune jusqu’à ses 18 ans. Nous faites cela en soustrayant la valeur qu’un utilisateur a donnée à notre programme de 18 :

Nous utilisons la méthode int() pour convertir l’entier age. Cela nous permet de soustraire l’√¢ge de l’utilisateur de 18 ans.

Ensuite, nous convertissons cette valeur en chaaîne et l’imprimons sur la console. Nous convertissons la valeur en chaaîne car nous devons la concaténer en une chaaîne. faites-le, toutes les valeurs doivent être formatées sous forme de chaaîne.

Convertissons la valeur de "years_left‚" et affichons-la sur la console :

Ce code imprime un message nous informant du nombre d’années qu’il reste à un utilisateur jusqu’à ses 18 ans. Exécutez notre code et voyez ce qui se passe :

Notre code renvoie une erreur. Nous avons essayé d’utiliser la méthode str() pour convertir la valeur de "years_left‚". Plus tôt dans notre programme, nous avons déclaré une variable appelée "str‚". Python pense "str" est une chaaîne dans notre programme, pas une fonction.

Pour résoudre cette erreur, nous renommeons la variable "str‚" à "age‚" :

Comme nous avons renommé notre variable, Python utilisera la fonction str() lorsque nous l’appelons. Il n’y a plus de variable occupant ce nom. Exécutons à nouveau notre code :

Notre code calcule avec succès combien d’années il reste à un jeune jusqu’à ses 18 ans.

Exemple de scénario : chaaîne Formatage à l’aide de %

Cette erreur est également causée par une erreur dans le formatage des chaaînes.

Ajoutons quelques nouvelles fonctionnalités à notre dernier programme. Tout d’abord, nous demandons à un utilisateur son nom. Deuxièmement, nous allons créer le message qui indique à un utilisateur combien d’années il lui reste jusqu’à ce qu’il ait 18 ans en utilisant la syntaxe de formatage %.

Commencez par demander à un utilisateur son nom :

Ensuite, nous révisons notre instruction print() pour utiliser la syntaxe de formatage de chaaîne %. Nous le faisons parce que la syntaxe % est plus facile à lire lors du formatage de plusieurs valeurs dans une chaaîne. Voici le code que nous utilisons pour formater le message que nous montrerons à un utilisateur :

Notre programme final ressemble à ceci :

Notre code remplace le symbole de type chaaîne %s par les valeurs "nom‚" et " √¢ge ", respectivement. Exécutons notre code et voyons ce qui se passe :

Notre code renvoie une erreur car nous avons oublié d’utiliser l’opérateur % pour séparer notre chaaîne et les valeurs que nous voulons ajouter à notre chaaîne.

Notre code pense que nous essayons d’appeler "%s, vous avez %s années restantes jusqu’à ce que vous atteigniez 18 ans." comme fonction car la chaaîne est suivie d’une parenthèse.

"Carrière Karma est entré dans ma vie quand j’en avais le plus besoin et m’a rapidement aidé à faire un bootcamp. Deux mois après l’obtention de mon diplôme, j’ai trouvé mon rêve travail qui correspond à mes valeurs et à mes objectifs dans la vie !"

Venus, ingénieur logiciel chez Rockbot

Pour résoudre cette erreur, nous ajoutons un signe de pourcentage entre "%s, il vous reste %s ans jusqu’à ce que vous atteigniez 18 ans" et (nom, √¢ge) dans notre code :



Conclusion

La "erreur de type : ‚Äòstr‚Äô l’objet n’est pas appelable " une erreur est générée lorsque vous essayez d’appeler une chaaîne en tant que fonction. Pour résoudre cette erreur, assurez-vous de ne pas utiliser "str‚" comme nom de variable.

Si cela ne résout pas le problème, vérifiez si vous utilisez l’opérateur % pour formater les chaaînes. Un signe % doit apparaaître entre une chaaîne et les valeurs que vous souhaitez ajouter à une chaaîne.

Vous êtes maintenant prêt à résoudre cette erreur Python courante comme un pro !

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