i += x > 0 是什么意思?

sqq*_*qqq 2 python

我正在审查一段代码,我想知道这个表达式是什么意思:

target += counter[s[left]] >= 0
Run Code Online (Sandbox Code Playgroud)

Dee*_*ace 7

counter[s[left]] >= 0计算结果为布尔值,即Trueor False

把它放在一边, target += val相当于target = target + val.

由于bool子类int,在数学上下文中True1False0

本质上,这一行(大概在修改countersleft或它们的任意组合的循环内)计算counter[s[left]]大于或等于 的次数0