當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。