python有三种数字类型:整型,浮点型和复数。
把整型数字赋值给变量,变量就是整型
>>> print(a)
456
把浮点型数字赋值给变量,变量就是浮点型
>>> print(b)
2.7
复数型的数字,需要特别构建
>>> c=complex(1,2)
>>> print(c)
(1+2j)
通过int()方法,可以把一个数字或者非数字强行转化为整型
>>> int(2.3)
2
可以看到,如果这个数字是浮点型的,那么小数点后面的部分丢失。同样地,把复数强行转化为整型,会有更多的信息丢失。
有趣的是,把整型数字字符强行转为整型,也是可以的
>>> int("1")
1
不过如果里面有非数字的字符,转化就会失败了
>>> int('3.45')
Traceback (most recent call last):
File "",line 1, in
ValueError: invalid literal for int() withbase 10: '3.45'
同样的,通过float()可以强行转化成一个浮点型。而complex()可以强行转化为一个复数。
在python2.7里面,整型分成了int型和long型。int型表示的数值范围较小。有多小呢?这取决于cpu是32位还是64位的。我们也有办法查看
>>> import sys
>>> print(sys.maxint)
通过查看本机的sys.maxint参数,就可以知道自己的int能表示多大。在64bit机器上面,表示的最大值如上。
但是超过了最大值,也不会有溢出。
>>> print(sys.maxint+1)
此时python会自动把它转为long类型的。这就是为什么python3就把int和long合成一个原因。
Python的数字类型,支持基本的数字运算
比如说相加
9.6
比如说相减
-4
比如说相乘
>>> 4*(4+7j)
(16+28j)
比如说相除
1.6
比如说取绝对值
>>> abs(-4)
4
比如说幂运算
>>> pow(2,3)
8
比如说取余
1
比如说取模
2
需要注意的是,两个整型的除法运算,会返回向下取整的整型
所以要得到更想要的数值,做除法的时候最好变成浮点型
本文完。
领取专属 10元无门槛券
私享最新 技术干货