我必须在 Python 中解析 syslog 消息的 Facility 和 Severity。这些值以单个整数的形式随每条消息一起提供。事件的严重性为 0-7,在整数中的 3 个最低有效位中指定。从数字中评估这 3 位的最简单/最快的方法是什么?
我现在拥有的代码只是进行 3 位右移,然后将该数字乘以 8,然后从原始代码中减去结果。
FAC = (int(PRI) >> 3)
SEV = PRI - (FAC * 8)
必须有一种不那么复杂的方法来做到这一点——而不是清除位,然后减去。