SyntaxError: can't assign to function call in Python

SyntaxError: can't assign to function call in Python

我有:

a=['ab',200] 
cap_init=150

我实际上想在某些情况下更新变量 a[1] 的值。程序不能运行这条指令:

int(a[1])=int(a[1])-self.cap_init

它给出了这个错误:

"SyntaxError: can't assign to function call"

当你执行int(a[1])时,它只是显示a[1]的整数格式。在python int() 中是一种将type-cast 数值转换为整数的方法。当您尝试执行 int(a[1])=... 时,您首先尝试计算值 int(a[1]) - self.capacite_int,然后尝试将此值分配给左侧 int() 的函数调用。如果你想改变 a[1] 的值,你需要像这样简单地重新分配它:

a[1] = int(a[1]) - self.cap_init