类型错误:Float对象不可调用

时间:2014-12-10 09:52:27

标签: python

执行max(2,3)

时在python中获取错误
>>> max(2,3)
Traceback (most recent call last):
   file "<console>", line 1, in ?
TypeError: 'float' object is not callable

有语法问题吗?

3 个答案:

答案 0 :(得分:9)

代码看起来不错。您可能之前已为max分配了一些值。

>>> max(2, 3)
3
>>> max = 3.4
>>> max(2, 3)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'float' object is not callable

如果您没有向max明确指定任何内容,则问题可能出在您导入的文件中。

答案 1 :(得分:4)

您的代码中已放置

max = some number

现在您在将名称max绑定到max后尝试使用float功能。这就是为什么你应该总是小心变量名

>>> max = 9.0
>>> max(2, 3)

Traceback (most recent call last):
  File "<pyshell#16>", line 1, in <module>
    max(2, 3)
TypeError: 'float' object is not callable

你可以自己解决这个问题

>>> max = __builtins__.max
>>> max
<built-in function max>
>>> max(2, 3)
3

但是你不应该这样做,只需选择一个不同的变量名称,例如max_num

答案 2 :(得分:0)

实际上max()函数将“iterator”作为参数并返回最大值,它是非常灵活的函数并接受以下形式的参数:

  • 的整数:

    maximum = max(2,1,4,5,6,9)
    print maximum
    
    • 列表:

      最大=最大([2,1,4,5,6,9])

      打印最大

    • 的字符串:

      maximum = max(“214569”)

      打印最大

所以这些只是使用这个函数的一些方法,是的,您可以以相同的方式使用max函数作为浮点数。 最大=最大(1.3,1.5,2.6,4.6) 打印最大值

但是你不能将单个浮点值或整数值传递给函数,你应该传递任何长度大于1的可迭代对象。

你应该避免将这些内置函数用作变量名

希望有所帮助:)