Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

นับชุดบิตโดยใช้ Python List comprehension


ชุดบิตคือบิตที่แสดง 1 ในรูปแบบเลขฐานสองของตัวเลข ในบทความนี้เราจะมาดูวิธีการนับจำนวนชุดบิตในตัวเลขทศนิยมที่กำหนด

#53 in binary is: 110101
The number of set bits is the number of ones.
Here it is 4.

ในโปรแกรมด้านล่าง เราจะนำตัวเลขมาแปลงเป็นเลขฐานสอง เนื่องจากการแปลงไบนารีมี 0b เป็นอักขระสองตัวแรก เราจึงลบออกโดยใช้เทคนิคการแยกสตริง จากนั้นใช้ for loop เพื่อนับเลขฐานสองแต่ละบิตหากค่าของหลักนั้นเป็น 1

ตัวอย่าง

value = 59
#Check the binary value
print(bin(value))
#Remove the first two characters
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