每天三分钟,我们一起学python。在上一期python的基本语法中,我们学习了python的基本语法,也就是说我们掌握了python的基本规则,下一步我们就可以真正开始写程序了。
仅仅只是打印出“hello world”肯定是不够的,我们还要操作更多——输入一些内容,通过一些控制,输出我们想要的东西,那么我们就可以使用变量和常量来达到这个目标。今天我们要说的就是基本数据类型中的数字。
Python 中的数字当然非常类似数学中的数字,但也受限于计算机中的数字表示方法。Python 区分整型数、浮点型数和复数,其中整型数分为两种:整型(int)和布尔型(bool)。浮点型数即为浮点型(float),复数即为复数(complex)。
整型(int)
int类型可以表示任意大小的数字,仅受限于可用的内存 (包括虚拟内存)。这种类型与我们生活中常用的整数一致,可以使用加、减、乘、除等,括号( )可以用来分组,例如:
- >>> 2 + 3 # 加法
- 5
- >>> 5 – 2 # 减法
- 3
- >>> 3 * 7 # 乘法
- 21
- >>> -1*2 #支持负数
- -2
- >>> -1+5 #支持负数
- 4
- >>> 10/2 # 除法
- 5.0
- >>> (100 – 5*6) / 5 #括号分组
- 14.0
我们日常生活中用到的最多的是十进制的数字,但是在计算机中,还会有二进制、十六进制、八进制等数字,这些也是可以的。
常用的二进制,也就是满2进1,用0bXXX表示,如0b10,就代表十进制的2。二进制满2进1,所以只能包含1或0两个字符,比如0b00010,0b10,0b110等等。二进制也可以进行计算,例如:
- >>> 0b10+0b11
- 5
- >>> 0b10+2
- 4
- >>> 0b10*0b11
- 6
- >>> 0b110/0b10
- 3.0
那么十六进制也是类似,十六进制就是满16进1,十六进制整数用0x作为前缀,包含0-9、a-f共16个字符,比如:0x12ff,0xaf583,0xfff。其中,a-f这6个字母不区分大小写,也就是说A-F与a-f是没有区别的。同样的十六进制也可以进行计算。
还有需要注意的是,在python中整型没有long类型,int类型可以指定任意大小的整数。
浮点型(float)
大家可以注意到,在上面整型数做除法运算的时候,输出的结果即使是个整数也会有小数点,像3.0、 5.0这样,这就是我们下面要说的浮点型。浮点型简单的说就是小数类型,写法与常用书写一致,如0.5、 0.33333、-0.78952416、 3.1415926等,也可以使用科学计数法表示,如2e-10、 8e+10等。
浮点型对象表示机器级的双精度浮点数。其所接受的取值范围和溢出处理将受制于底层的机器架构 (以及 C 或 Java 实现)。Python 不支持单精度浮点数;支持后者通常的理由是节省处理器和内存消耗,但这点节省相对于在 Python 中使用对象的开销来说太过微不足道,因此没有理由包含两种浮点数而令该语言变得复杂。
需要注意的一点,除法运算 (/) 永远返回浮点数类型。如果要做floor division 得到一个整数结果(忽略小数部分)你可以使用// 运算符;如果要计算余数,可以使用 %。包含多种混合类型运算数的运算会把整数转换为浮点数。例如:
- >>> 100/5 #除法
- 20.0
- >>> 10/3 #除法
- 3.3333333333333335
- >>> 10//3 #除法,忽略小数部分
- 3
- >>> 10%3 #计算余数
- 1
- >>> 2.5*4+1-3 #多种类型运算
- 8.0
布尔型(bool)
布尔型其实非常容易理解,只分为true和false,也可以理解为真和假或者1和0。
例如,一个无限循环现在能够编写成while True: 。类似地,通过使用flag = False,可以清楚的设置标志位。你能够将True和False看做事预定义的设置为整数1和0的变量,在Python中True+5得到的是6!
- >>> type(True) # True是bool类型
- <class ‘bool‘>
- >>> type(False) # False是bool类型
- <class ‘bool‘>
- >>> True + 5 #相当于1+5
- 6
复数(complex)
Python 也内置对 复数的支持,使用后缀 j 或者 J 就可以表示虚数部分(例如 3+5j )。虚数不能单独存在,它们总是和一个值为0.0的实数部分一起构成一个复数。表示虚数的语法:real+imag j 其中实数部分和虚数部分都是浮点数。复数还有conjugate方法,调用它可以返回该复数的共轭复数对象。
此类对象以一对机器级的双精度浮点数来表示复数值。有关浮点数的附带规则对其同样有效。一个复数值 z 的实部和虚部可通过只读属性 z.real 和 z.imag 来获取。
以上就是今天给大家分享的内容了,如果大家喜欢我分享的内容,别忘了关注点赞评论转发哦!如果大家有什么问题可以在评论区留言,大家一起探讨交流。后期我会分享更多精彩内容,欢迎大家持续关注!