1 = 0b1 -> 1
5 = 0b101 -> 3
10 = 0b1010 -> 4
100 = 0b1100100 -> 7
1000 = 0b1111101000 -> 10
…
How can I get the bit length of an integer, i.e. the number of bits that are necessary to represent a positive integer in Python?
In python 2.7+ there is a int.bit_length()
method:
>>> a = 100
>>> a.bit_length()
7