Python 数字数据类型用于存储数值。
数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间。
本文总结了数字的类型和数字类型的修改,以及数字的运算等相关知识。
通常被称为是整型或整数,是正或负整数,不带小数点。
浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)
复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。
布尔(bool)是整型的子类型。
- 表示真假、对错、黑白等;
- True和False:他们首字母是大写的,类型转换是为1和0;
- 类型转换为bool:使用bool()小方法
- 非0都是True
- 0、0.0、-0.0、空字符串、空列表、空字典、空集合、空元组、None等都是False;
运行下列代码可以查看x的数据类型
- int(x) 将x转换为十进制整数
- float(x) 将x转换到一个浮点数。
- bin(x) 将x转换为二进制
- oct(x) 将x转换为八进制
- hex(x) 将x转换为十六进制
- complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。
- complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字.
- bool(x) 将 x 转化为布尔值
:
这里介绍一个函数:id(),用来查看变量的地址
- :加法
- :减法
- :乘法
- :除法
- :取模(取余数)
- :幂运算
- :整除(取整数部分)
除法 / 总是返回一个浮点数
整除// 得到的并不一定是整数类型的数,它与分母分子的数据类型有关系。
不同类型的数混合运算时会将整数转换为浮点数:
- :等于
- :不等于
- :小于
- :大于
- :小于等于
- :大于等于
比较运算符的运算结果为布尔值
- :与(逻辑与)
- :或(逻辑或)
- :非(逻辑非)
A and B表达式的结果: 如果A表达式的布尔判定为真则B表达式的结果作为整个表达式的结果,如果A表达式的布尔判定为假则A表达式的结果作为整个表达式的结果
注意: 如果A判定为假 B将不会执行
or和not跟and一样
Python中的位运算符主要用于处理整数类型的二进制位操作。以下是Python中的6种主要位运算符:
- :按位与
- :按位或
- :按位异或
- :按位取反
- :左移位
- :右移位
-
按位与(&):
- 表达式:
- 功能:对于每一位,如果a和b的相应位都是1,则结果位为1,否则为0。
-
按位或(|):
- 表达式:
- 功能:对于每一位,只要a和b中至少有一位是1,则结果位为1,否则为0。
-
按位异或(^):
- 表达式:
- 功能:对于每一位,如果a和b的相应位不同(一个为1,另一个为0),则结果位为1,否则为0。
-
按位取反(~):
- 表达式:
- 功能:对操作数a的每一个二进制位进行取反,即将1变为0,0变为1。
-
左移运算符(<<):
- 表达式:
- 功能:将a的二进制表示向左移动b位,左边移出的部分会被丢弃,右边空出的位置补零。
-
右移运算符(>>):
- 表达式:
- 功能:将a的二进制表示向右移动b位,对于无符号整数,右边移出的部分会被丢弃,左边空出的位置补零(通常补0);对于有符号整数,右移时取决于具体实现,可能是算术右移(符号位扩展)或者逻辑右移(补0)。
-
:赋值
-
:加法赋值
-
:减法赋值
-
:乘法赋值
-
:除法赋值
-
:取模赋值
-
:幂运算赋值
-
:整除赋值
注意:
没有 a++、 a-- 这种自增自减运算符;