python当中内置了多种数据类型,了解python内置的基本数据类型,有助于进行进行数据处理。第一篇我们将介绍python当中的数字。
我们将介绍每一种数字类型,他们适用的操作符,以及用于处理的内建函数。
python支持多种数字类型分别是:整形,布尔型,双精度浮点型和复数。
1.数字变量的赋值,更新和删除
赋值:
In [4]: a=123
In [5]: a
Out[5]: 123
更新:
实际上数字时不可变对象,也就是说对于一个变量的更新,是在内存当中从新创建了一个新的数字,然后将原有的变量指向这个新的数字。
In [6]: a=456
In [7]: a
Out[7]: 456
删除:
使用del方法进行删除
In [8]: del a
In [9]: a
---------------------------------------------------------------------------
NameError
Traceback (most recent call last)
<ipython-input-9-3f786850e387> in <module>
----> 1 a
NameError: name \'a\' is not defined
2.整型
python当中的整型有2种形式,布尔型,整型(长整型在python3当中已经被移除了)
布尔型:布尔型实际上只有两个值,True和False
整型:标准整型是最通用的数据类型,在实际使用当中足够大数值保存为整型时也不会溢出,python天生支持大数运算(当然要是超过内存大小它还是会溢出吧)
3.浮点型
python当中的浮点数类似于C语言当中的double 类型是双精度浮点,可以用直接的十进制和科学计数法表示。
python当中的浮点与所有其他支持浮点运算的语言相同,都会出现不精确的问题,就如同使用十进制很难去精确的表达一个分数例如1/3,对于十进制的浮点数,使用二进制也很难精确的表达这个小数。
In [19]: a=4.2
In [20]: b=2.1
In [21]: a+b
Out[21]: 6.300000000000001
虽然python当中的浮点数没有那么精确,但是处理日常大多数任务已经足够,且使用python内置的浮点数进行运算时,速度也会快很多,但是当你面对需要高精度的场景时可以使用模块,当然速度会慢一些。
4.复数
python当中支持复数,python当中的复数有以下特点:
1.复数由实部和虚部共同组成
2.虚部不能单独存在
3.实数和虚数部分都是浮点型
4.虚数部分必须有后缀J或者j
复数有以下属性:
num.real 返回复数的实部
num.imag返回复数 虚部
num.conjugate()返回复数的共轭复数
In [25]: a=7+8j
In [26]: a.real
Out[26]: 7.0
In [27]: a.imag
Out[27]: 8.0
In [28]: a.conjugate()
Out[28]: (7-8j)
运算符:
算术运算符以下假设变量a为10,变量b为21:
运算符描述实例+ 加 - 两个对象相加 a + b 输出结果 31
- 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -11
* 乘 - 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 210
/ 除 - x 除以 y b / a 输出结果 2.1
% 取模 - 返回除法的余数 b % a 输出结果 1
** 幂 - 返回x的y次幂 a**b 为10的21次方
// 取整除 - 向下取接近除数的整数
比较运算符
以下假设变量a为10,变量b为20:
运算符描述实例== 等于 - 比较对象是否相等 (a == b) 返回 False。
!= 不等于 - 比较两个对象是否不相等 (a != b) 返回 True。
> 大于 - 返回x是否大于y (a > b) 返回 False。
< 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。 (a < b) 返回 True。
>= 大于等于 - 返回x是否大于等于y。 (a >= b) 返回 False。
<= 小于等于 - 返回x是否小于等于y。 (a <= b) 返回 True。
赋值运算符
以下假设变量a为10,变量b为20:
运算符描述实例= 简单的赋值运算符 c = a + b 将 a + b 的运算结果赋值为 c
+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取模赋值运算符 c %= a 等效于 c = c % a
**= 幂赋值运算符 c **= a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a
位运算符(仅适用于整型)
按位运算符是把数字看作二进制来进行计算的。Python中的按位运算法则如下: