Python不能赋值给op

2024-04-25 17:27:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直收到语法错误:

can't assign to operator when trying to assign a ID

工作代码

canvas = self.matrix.CreateFrameCanvas()
graphics.DrawText(canvas, font, LEFT, TOP, setcolor, MESSAGE)
self.matrix.SwapOnVSync(canvas)

我要达到的目标

^{pr2}$

错误:

canvas+ID = self.matrix.CreateFrameCanvas()
SyntaxError: can't assign to operator

Tags: to代码selfidoperatorcanmatrixcanvas
2条回答

运算符+用于连接字符串,而不是变量名。虽然您想要的可以通过使用eval('canvas'+ID+'= self.matrix.CreateFrameCanvas()')来完成,但这是一个糟糕的实践,请使用列表。在

如果您想以编程方式分配多个变量,比如canvas4和/或{}等等,那么您可能应该使用一个列表或字典,而不是多个变量。在

比如说:

canvases = {}
ID = 4

canvases[ID] = self.matrix.CreateFrameCanvas()
graphics.DrawText(canvases[ID], font, LEFT, TOP, setcolor, MESSAGE)
self.matrix.SwapOnVSync(canvases[ID])

相关问题 更多 >

    热门问题