gpt4 book ai didi

python - 如何判断一个int数是奇数还是偶数? (二进制方式)

转载 作者:太空狗 更新时间:2023-10-29 21:17:33 25 4
gpt4 key购买 nike

我想用基础知识来提高代码的效率。我知道在二进制系统中。当数字的最后一位是 1 时,这是一个奇数。而 0 是偶数。python中如何使用这种方式判断一个int数?那个 python 是否提供了任何内置方法来做到这一点?

最佳答案

将它与 1 相加:

  0000101001000101
0000000000000001
&
__________________
0000000000000001

如果得到 1,则数字为奇数。如果得到 0,则数字为偶数。虽然这可行,但我会改用模运算符:

>>> 8888 % 2
0
>>> 8881 % 2
1

阅读起来更快更直接:

In [5]: numbers = [random.randint(1, 1000000) for n in range(100000)]

In [6]: %timeit [n & 1 == 0 for n in numbers]
11 ms ± 390 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)

In [7]: %timeit [n % 2 == 0 for n in numbers]
8.05 ms ± 244 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)

关于python - 如何判断一个int数是奇数还是偶数? (二进制方式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16382403/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com