代码之家  ›  专栏  ›  技术社区  ›  user6764392

TypeError:“int”对象不可调用-如何确定导致此错误的原因?[已关闭]

  •  -4
  • user6764392  · 技术社区  · 8 年前

    如果我能收到一些关于为什么我会收到这种类型错误的输入,那将是绝对惊人的。我已经调试了几个小时,在这个函数中找不到导致这个特定错误的原因……:(

    def a_plus_abs_b(a, b):
        if b < 0:
            f = sub(a, b)
        else:
            f = add(a, b)
        return f(a, b)
    
    1 回复  |  直到 8 年前
        1
  •  1
  •   Ahasanul Haque    8 年前

    f 是一个 int float ,而不是函数。你不能叫它。

    就像你想说的那样 f(a, b)

    TypeError:“int”对象不可调用

    f 以避免出现这种情况。