当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python int.bit_length用法及代码示例


用法:

int.bit_length()

返回以二进制表示整数所需的位数,不包括符号和前导零:

>>> n = -37
>>> bin(n)
'-0b100101'
>>> n.bit_length()
6

更准确地说,如果 x 不为零,则 x.bit_length() 是唯一的正整数 k 使得 2**(k-1) <= abs(x) < 2**k 。等效地,当 abs(x) 足够小以具有正确舍入的对数时,则为 k = 1 + int(log(abs(x), 2)) 。如果 x 为零,则 x.bit_length() 返回 0

相当于:

def bit_length(self):
    s = bin(self)       # binary representation:  bin(-37) --> '-0b100101'
    s = s.lstrip('-0b') # remove leading zeros and minus sign
    return len(s)       # len('100101') --> 6

3.1 版中的新函数。

相关用法


注:本文由纯净天空筛选整理自python.org大神的英文原创作品 int.bit_length。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。