Python 为什么使用“min()”会出现此语法错误?
如果这个问题太简单,首先请道歉。开始学习Python吧 这是我的代码: 类解决方案: def mincostgrampingstairself,成本:List[int]->int: n=成本 m=[0]*n def dpself,成本,m,i: dp1=dpcost,m,i-1+成本[i-1] dp2=dpcost,m,i-2+成本[i-2] 返回m[i]=mindp1,dp2 返回成本,m,n 当我尝试运行它时,它告诉我SyntaxError:代码行中的无效语法返回m[I]=mindp1,dp2 =======>反馈后修改 类解决方案: def mincostgrampingstairself,成本:List[int]->int: m=[0]*lencost+1 def dpcost,m,i: 如果我0: 返回m[i] dp1=dpcost,m,i-1+成本[i-1] dp2=dpcost,m,i-2+成本[i-2] m[i]=mindp1,dp2 返回m[i] 返回dpcost,m,lencostPython 为什么使用“min()”会出现此语法错误?,python,python-3.x,Python,Python 3.x,如果这个问题太简单,首先请道歉。开始学习Python吧 这是我的代码: 类解决方案: def mincostgrampingstairself,成本:List[int]->int: n=成本 m=[0]*n def dpself,成本,m,i: dp1=dpcost,m,i-1+成本[i-1] dp2=dpcost,m,i-2+成本[i-2] 返回m[i]=mindp1,dp2 返回成本,m,n 当我尝试运行它时,它告诉我SyntaxError:代码行中的无效语法返回m[I]=mindp1,dp
与其他一些语言不同,在Python中不能同时赋值和返回变量。把那条线一分为二
m[i] = min(dp1, dp2)
return m[i]
dp函数中不需要self,因为它是一个局部函数而不是类方法。非常感谢!这很有效。自我在这里也是多余的。