修復 Python 中浮點物件無法呼叫的錯誤

Manav Narula 2022年5月17日
修復 Python 中浮點物件無法呼叫的錯誤

函式可以被認為是可重用的程式碼,可以在程式的任何地方呼叫和使用。我們只能在 Python 中呼叫函式。

要呼叫函式,我們在函式名稱中使用括號。為函式提供的任何引數或引數都在這些括號內指定。

Python 中的 float object is not callable 錯誤以及如何解決

本教程將討論 Python 的 float object is not callable 錯誤。

這是一個 TypeError,它表示某些無效操作與給定物件相關聯。在 Python 中,我們只能呼叫函式。此錯誤表明正在呼叫 float 物件。

例如,

a = 1.5
a()

輸出:

TypeError: 'float' object is not callable

在上面的例子中,我們得到了錯誤,因為我們建立了一個 float 變數 a 並試圖呼叫它。我們現在將討論可能發生此類錯誤的各種場景。

在 Python 中,我們有時會執行復雜的複雜操作,並且可能會使用括號來分隔運算子和運算元。有時,人們可能會將括號放在錯誤的位置,這似乎代表了一個函式呼叫語句。

例如,

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

輸出:

TypeError: 'float' object is not callable

我們需要注意括號並相應地放置運算元來解決這個問題。這是對前面示例的簡單修復,如下所示。

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

輸出:

240.0

現在讓我們討論另一種情況。請參閱下面的程式碼。

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


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

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

輸出:

29.400000000000002
TypeError: 'float' object is not callable

在上面的示例中,我們建立了一個函式,然後將它分配給同名變數兩次。

這適用於第一次呼叫,但返回 float object is not callable 是由於第二次函式呼叫引起的。發生這種情況是因為函式在第二個函式呼叫語句中被變數名覆蓋。

它也有一個簡單的修復。我們應該更改函式的名稱或變數來解決這個錯誤。

請參閱下面的程式碼。

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


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

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

輸出:

29.400000000000002
106.6
作者: 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

相關文章 - Python Float

相關文章 - Python Error