使用 Python 列表推导式计算设置位

pythonserver side programmingprogramming

设置位是二进制数字中表示 1 的位。在本文中,我们将了解如何计算给定十进制数字中设置位的数量。

二进制中的 #53 为:110101
The number of set bits is the number of ones.
Here it is 4.

在下面的程序中,我们将数字转换为二进制。由于二进制转换包含 0b 作为前两个字符,我们使用字符串拆分技术将其删除。然后使用 for 循环计算二进制数的每个位,如果该数字的值为 1。

示例

value = 59
#检查二进制值
print(bin(value))
#删除前两个字符
bitvalue = bin(value)[2:]
print(bitvalue)
count = 0
for digit in bitvalue:
   if digit == '1':
      count = count+1
print("Length of set bits: ",count)

输出

运行上述代码得到以下结果 −

0b111011
111011
Length of set bits: 5

相关文章