numpy.binary_repr 是 NumPy 中用于将整数转换为其二进制字符串表示的函数,类似于 Python 内置函数 bin(),但它支持 指定位数(width) 的补零输出,适用于位运算、编码分析等场景。本文主要介绍一下NumPy中binary_repr方法的使用。

numpy.binary_repr

numpy.binary_repr(num, width=None)      [source]

以字符串形式返回输入数字的二进制表示形式。

对于负数,如果未指定宽度,则会在前面添加减号。

 如果指定了宽度,则返回该宽度的数字的补码。

在二进制补码系统中,负数由绝对值的二进制补码表示。 这是在计算机上表示有符号整数的最常用方法[1]。 N位二进制补码系统可以表示httpsfileaionlifexyzsourcedownloadid5fa55540dc72d90263e632fbhttpsfileaionlifexyzsourcedownloadid5fa5554fdc72d90263e632fc范围内的每个整数。

参数 :

numint

只能使用整数十进制数。

widthint, 可选

如果num为正数,则返回的字符串的长度;

如果num为负数,则返回两个补数的长度,

但前提是宽度至少足以让num以指定形式表示。

 如果宽度值不足,它将被忽略,

并且num将以二进制(num> 0

或二进制补码(num <0)的形式返回,

其宽度等于表示整数中所需的最小位数。 指定表格。 

不建议使用此行为,以后将引发错误。

 从1.12.0版开始不推荐使用。

返回值 :

binstr

数字或数字的补码的二进制表示形式。

Notes

binary_repr等效于将base_repr与base 2一起使用,但是速度要快25倍。

例子

1)基本使用(正整数)

import numpy as np

print(np.binary_repr(5))     # '101'
print(np.binary_repr(10))    # '1010'

2)指定位宽(不足补0)

import numpy as np

# '0101'
print(np.binary_repr(5, width=4))  
# '00000101'
print(np.binary_repr(5, width=8))   

3)处理负数(补码方式表示)

import numpy as np

 # '1111'
print(np.binary_repr(-1, width=4)) 
 # '1101'
print(np.binary_repr(-3, width=4)) 

推荐文档

相关文档

大家感兴趣的内容

随机列表