python - 计算给定整数中的个数

标签 python python-2.7

如何计算给定整数的二进制表示形式中 1 的个数。

假设给你一个数字20,它的二进制形式是10100,所以1的个数是2。

最佳答案

您要找的是 Hamming weight ,并且有很多算法可以做到这一点。这是另一个简单的方法:

def ones(n):
    w = 0
    while (n):
        w += 1
        n &= n - 1
    return w

关于python - 计算给定整数中的个数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15540798/

相关文章:

python - 使用 sqlalchemy python 将 JSON 数据导入 SQL

python - 在这个python程序的初始化中这个神奇的 "ih"变量是什么?

python - 在 python 上绘制 (-1,1) 区间内的函数 1/x 和 -1/x^2

python - Xpath - 在 xpath 结果中搜索

python - 如何使用 for 处理列表/字符串中较早的元素?

python 3.3.2 年龄 >= 24 : TypeError: unorderable types: str() >= int()

python - 在堆栈跟踪中打印函数的参数值

python - Numpy issubdtype 给出 "TypeError: data type not understood"

python - 生成 CSV 和空行

python - 如何将时间对象转换为总分钟数python