Bitwise vs shift(Python)

时间:2016-10-23 19:06:01

标签: python bit-manipulation

之间最快的操作是什么
commands.CreateCommand("attack").Do(async (e) =>
{
    await e.Channel.SendMessage("You have attacked");
    showHP(e);
}

0b11111111 >> 1 << 1

谢谢!

1 个答案:

答案 0 :(得分:1)

根据timeit

的结果
mquadri$ python -m "timeit" "0b11111111 >> 1 << 1"
100000000 loops, best of 3: 0.0159 usec per loop
mquadri$ python -m "timeit" "0b11111111 & 0b11111110"
100000000 loops, best of 3: 0.0162 usec per loop

两者的执行时间几乎相同,0b11111111 >> 1 << 1的执行时间比{{1>}快 0.0003 usec(可忽略)。 (注意:此时间可能因系统配置而异)。

但是,我 0b11111111 & 0b11111110一起使用,因为它看起来更干净。