这可以简化为单个单线程,而不会更难读取一个内衬吗?
if self.is_running:
return
self.is_running = True
就像是:
return if self.is_running else self.is_running = True
(显然上面的内容不起作用,只是我想要实现的一个例子)
你想用return if self.is_running else self.is_running = True
实现的是一个条件表达式。但是,您不能在条件表达式中使用任何类型的语句(例如,self.is_running = True
)。条件表达式应采用以下形式:
a if condition else b
其中b
是一个值而不是一个声明。
在您的情况下,您可以实现的最短代码如下:
if self.is_running: return
self.is_running = True