Прежде всего, если prim
может быть False
, то вы определенно хотите это как второе условие. Только в том случае, если оно может быть оценено как True
, вы хотите, чтобы оно приводило к соединению or
: результат False
гарантирует, что вы должны оценить другое выражение.
Тем не менее, нет тривиального правила: вам нужно определить эффективное значение порядка: время, потраченное на каждую оценку, умножается на вероятность того, что она закоротит оценку, с учетом сэкономленного времени.
В этом случае num == 5
(обратите внимание на оператор сравнения, а не на присваивание) настолько дешев, что, скорее всего, он будет первым, который вам нужен. Это зависит от вероятности того, что это будет True
, и относительной экономии времени при звонке prim
.