数字类型 int和long
之所以要把int和long放在一起的原因是python3.x之后已经不区分int和long,统一用int。python2.x还是区分的。下面我以Python2.7为例:
>>> i = 10
>>> type(i)
<type 'int'>
>>> i=10000000000
>>> type(i)
<type 'long'>
那么为什么10就是int,10000000000就是long呢,当然这就和int的最大值有关了,int类型的最大值为231-1,即2147483647,也可以用sys.maxint。
>>> 2**31-1
2147483647L
>>> sys.maxint
2147483647
为什么用上面的方法求的值就是long型的呢(数字后面加‘L’表示是long型),因为2**31的值为2147483648,这个值是一个long型,用一个long型减去1,结果还是一个long,但实际上int型的最大值就是2147483647
>>> type(2147483647)
<type 'int'>
>>> type(2147483648)
<type 'long'>
float类型
float类型和其它语言的float基本一致,浮点数,说白了,就是带小数点的数,精度与机器相关。例如:
>>> i = 10000.1212
>>> type(i)
<type 'float'>