Fixer Float Object Is Not Callable en Python

Manav Narula 8 avril 2022
Fixer Float Object Is Not Callable en Python

Les fonctions peuvent être considérées comme du code réutilisable qui peut être appelé et utilisé n’importe où dans le programme. Nous ne pouvons appeler des fonctions qu’en Python.

Pour appeler des fonctions, nous utilisons les parenthèses avec le nom de la fonction. Tous les arguments ou paramètres à fournir pour la fonction sont spécifiés entre ces parenthèses.

L’erreur float object is not callable en Python et comment la résoudre

Ce tutoriel traite de l’erreur float object is not callable de Python.

Il s’agit d’une TypeError, qui indique qu’une opération invalide est associée à un objet donné. En Python, nous ne pouvons appeler que des fonctions. Cette erreur indique qu’un objet float est appelé.

Par example,

a = 1.5
a()

Production :

TypeError: 'float' object is not callable

Dans l’exemple ci-dessus, nous obtenons l’erreur parce que nous avons créé une variable float a et essayé de l’appeler. Nous allons maintenant aborder divers scénarios dans lesquels une telle erreur peut se produire.

En Python, nous effectuons parfois des complications complexes et pouvons utiliser des parenthèses pour séparer les opérateurs et les opérandes. Parfois, on peut placer les parenthèses dans la mauvaise position où cela peut sembler représenter une instruction d’appel de fonction.

Par example,

a = 1.5
b = 5
c = 8 * 10 / 5 * a(2) * 5
print(c)

Production :

TypeError: 'float' object is not callable

Nous devons faire attention aux parenthèses et placer les opérandes en conséquence pour résoudre ce problème. Il s’agit d’une solution simple pour l’exemple précédent, comme indiqué ci-dessous.

a = 1.5
b = 5
c = 8 * 10 / 5 * (a * 2) * 5
print(c)

Production :

240.0

Abordons maintenant une autre situation. Voir le code ci-dessous.

def mul(a, b):
    return a * b


mul = mul(7, 4.2)
print(mul)

mul = mul(13, 8.2)
print(mul)

Production :

29.400000000000002
TypeError: 'float' object is not callable

Dans l’exemple ci-dessus, nous avons créé une fonction, puis l’avons affectée deux fois à la même variable de nom.

Cela fonctionne pour le premier appel mais renvoie le objet flottant n'est pas appelable est dû au deuxième appel de fonction. Cela se produit parce que la fonction est remplacée par le nom de la variable dans la deuxième instruction d’appel de fonction.

Il a également une solution simple. Nous devrions changer le nom de la fonction ou la variable pour résoudre cette erreur.

Voir le code ci-dessous.

def mul_cal(a, b):
    return a * b


mul = mul_cal(7, 4.2)
print(mul)

mul = mul_cal(13, 8.2)
print(mul)

Production :

29.400000000000002
106.6
Auteur: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Article connexe - Python Float

Article connexe - Python Error