整数类型
918字,阅读需时4分钟
来自专栏
课程/专栏

Python的整数类型与另外一些编程语言表示的整数类型不太相同,一些编程语言整数的取值范围与机器位数有关,例如,在32位机器上,整数的取值范围约是-2^31到2^31,在64位的机器上整数的取值范围约是-2^63到2^63。而Python的整数能表示的数值仅与机器支持的内存大小有关,也就是说Pyhton可以表示很大的数,可以超过机器位数所能表示的数值范围。

例1:

>>> a,b,c,d,e = 39,789889902876892112658,0x80,-32,-0x92
>>> print(a,b,c,d,e)
39 789889902876892112658 128 -32 -146
>>>

案例1创建了整数对象a、b、c、d、e,并分别进行了赋值。

整数类型的附加方法

整数类型也提供了其它几个方法,主要方法介绍如下。

方法声明:bit_length()

返回以二进制表示一个整数所需要的位数,不包括符号位和前面的零。

例2:

>>> num = -37
>>> bin(num)
'-0b100101'
>>> num.bit_length()
6
>>>
to_bytes(length, byteorder,*, signed=False)

返回表示一个整数的字节数组。如果整数不能用给定的字节数来表示则会引发 OverflowError异常。

参数length表示需要返回几个字节数组;参数byteorder确定用于表示整数的字节顺序,如果 byteorder 为 "big",则最高位字节放在字节数组的开头,如果 byteorder 为 "little",则最高位字节放在字节数组的末尾;参数signed 采用默认值即可。

例3:

>>> num = 12
>>> num.to_bytes(3,"big")
b'\x00\x00\x0c'
>>>
我要评论
全部评论