欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

(Python3)基本数据类型:int

程序员文章站 2022-06-12 22:36:34
...

int:整数类型

位于:builtins.py

 

初始化:

a = 10

获取二进制位长度:

a.bit_length()
print(a.bit_length())
#输出:4

将字节转换成整型:

#将字节转换成整型
#参数1:十六进制字节数
#参数2:高低位标识:byteorder为big或little,
#signed = True:big表示高字节在前,低字节在后;little表示低字节在前,高字节在后;
#因为需要考虑符号,所以需要对二进制进行先取反再加1操作;
#signed = False:big表示高字节在前,低字节在后;little表示低字节在前,高字节在后
#参数3:signedge=False表示不需要考虑符号位,为True表示需要考虑符号位 
#返回:十进制数值
num1 = int.from_bytes(b'\xf1\xff',byteorder="big",signed=True)
#输出 -3585
num2 = int.from_bytes(b'\xf1\xff',byteorder="little",signed=True)
#输出 -15
num3 = int.from_bytes(b'\xf1\xff',byteorder="big",signed=False)
#输出 61951
num4 = int.from_bytes(b'\xf1\xff',byteorder="little",signed=False)
#输出 65521

将整数转换成bytes类型:

#将整数转换成字节类型
#参数1:需要转换成字节bytes类型的整数
#参数2:bytes类型的长度
#参数3:高低位标识符:byteorder="big"表示高字节在前,低字节在后;byteorder="little"表示低字节在前,高字节在后。
#返回:bytes数组
num1 = int.to_bytes(128,8,byteorder="little")
#输出 b'\x80\x00\x00\x00\x00\x00\x00\x00'
num2 = int.to_bytes(128,8,byteorder="big")
#输出 b'\x00\x00\x00\x00\x00\x00\x00\x80'

 

获取绝对值:

a.__abs__()

获取a+b的值:

a.__add__(b)