【问题标题】:SyntaxError: can't assign to function call ( Python ) [closed]SyntaxError:无法分配给函数调用(Python)[关闭]
【发布时间】:2021-06-06 13:31:23
【问题描述】:

我的这行代码有错误,我需要帮助!!!

predict_func(x, y, w, h) = cv2.boundingRect(cnts[i])

它显示了这个错误:

SyntaxError: can't assign to function call

【问题讨论】:

  • 这个错误是正确的。你想达到什么目标?
  • 你想用这个做什么?
  • 你想将cv2.boundingRect(cnts[i]) 的结果分配给什么?你想如何访问结果?尝试将其分配给predict_func(x, y, w, h) 的目的是什么?您是否可能尝试更改 predict_func 的返回值以供将来调用?

标签: python opencv


【解决方案1】:

您正在将功能分配给功能。函数在您尝试分配时没有静态值,因此您不能简单地为其分配另一个函数。也许您想将每个分配给这样的变量:

my_var1 = predict_func(x, y, w, h)
my_var2 = cv2.boundingRect(cnts[i])

或者也许你想要这个:

def predict_func(x, y, w, h):
    return cv2.boundingRect(cnts[i])

但这会很奇怪,因为没有使用任何predict_funcs 参数,所以如果您能说明您正在尝试做什么,我们可能会提供更好的帮助。

【讨论】:

    【解决方案2】:

    错误非常简单 - 您正试图将函数的返回值分配给另一个函数。

    【讨论】:

      【解决方案3】:

      试试这个:

      def predict_func(x, y, w, h):
          return cv2.boundingRect(cnts[i])
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-03-01
        • 2021-04-06
        • 2015-04-23
        • 1970-01-01
        • 2015-03-27
        • 1970-01-01
        相关资源
        最近更新 更多