首页 > 解决方案 > 如何调试错误此文件“compiler.py”,第 8 行 f(n, m+1) = f(n-1, m) + f(n, m) + f(n+1, m) ^ SyntaxError:无法分配给函数调用

问题描述

如何调试它?

def f(n, m):
    while f(n, m) != int(f(n, m)):
        if n == 1:
            return 1
        elif n >= m - 1:
            return 0
        elif n >= 2 and n != m - 1:
            f(n, m+1) = f(n-1, m) + f(n, m) + f(n+1, m)
print(f(2, 4))

在控制台中,这里出现错误

文件“compiler.py”,第 8 行 f(n, m+1) = f(n-1, m) + f(n, m) + f(n+1, m) ^ SyntaxError: can't assign to函数调用

标签: pythonpython-3.xfunctionloopsiterated-function

解决方案


我现在才知道

  def f(n, m):
      if n == 1:
          return 1
      elif n > m:
          return 0
      else:
          return f(n-1, m-1 ) + f(n, m-1 ) + f(n+1, m-1 )
  print(f( 98, 100 ))

推荐阅读