(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)