Python-简单的按位或

Python-simpy bitwise or

现在学习python的simpy库。 你能解释一下为什么在 example 中使用 bitwise-or 吗?为什么我们不能使用简单的 or 语句。

results = yield req | env.timeout(patience)

来自 SimPy 的 Core Event Types

文档

This class also implements and() (&) and or() (|). If you concatenate two events using one of these operators, a Condition event is generated that lets you wait for both or one of them.

这意味着 reqenv.timeout(patience) 都是事件,我们将产生第一个发生的事件。即

results = yield (req | env.timeout(patience))

为了回答您原来的问题,您似乎可以使用 or 代替,但这可能不会使真正发生的事情变得更清楚,并且如果假设它是一个普通的旧 or 则会导致编辑错误.