主要包括:
整形,浮点型,复数类型。
是一种不可变类型的数据类型。
整数类型
包括:正整数、负整数、零。
整数支持二进制,八进制,十进制,十六进制方式书写。
进制方式 | 对应前缀 | 说明 |
二进制 | 0b/0B | 数字部分范围0,1 |
八进制 | 0O | 数字部分范围0-7 |
十进制 | 无 | 数字部分范围0-9 |
十六进制 | 0X/0x | 数字部分范围0-9和A-F |
位运算
操作 | 操作符 |
与运算 | & |
或运算 | | |
异或运算 | ^ |
左移运算 | << |
右移运算 | >> |
取反运算 | ~ |
运算符的优先顺序 ,由低到高:>> << & ^ | ~
a = 0b10101 b = 0b11011 print(a&b) print(a|b) print(a^b) print(a>>2) print(a<<2) print(~a|b)
浮点数
浮点数由整数和小数部分组成。
注意:浮点数的0.0和整数的0在逻辑运算上含义相同,但是存储位置不同。
i=0
print(id(0))
print(id(i))
print(id(0.0))
结果:
1592760074448
1592760074448
1592761116880
python中同样数值的不同变量内存地址一样。
Python实现int的时候,为了效率,首先创建出一个整数池,便于复用。其实对于不可变类型的数据都一样。
复数类型
复数分为实数部分和虚数部分。
书写方式complex(a,b)或者a+bj,其中j可以大写。
复数的实部和虚部是以浮点型存储的。
A = complex(1,2)
print(A.real)
print(A.imag)
结果:
1.0
2.0
布尔类型
布尔类型值存在两种值:True和False。
支持与,或,非运算。
比如
A = True
B = False
A|B
A&B
not A
True和False等价与1和0 ,可以先1和0一样进行常规运算。
数字类型运算
内置数值操作符
运算符 | 运算符描述 | 描述以及等价转换 |
+ | 加法运算 | 两个对象相加 |
- | 减法运算 | 等到负数或是一个数减去另一个数 |
* | 乘法运算 | 两个数相乘或是返回一个被重复若干次的字符串 |
/ | 除法运算 | X除于Y |
% | 取模运算 | 返回除法的余数 |
** | 幂运算 | A**B代表A的B次方 |
// | 整除运算 | 取整数,返回商的整数部分(向下取整) |
运算符优先级:** ⾼于 * / // % ⾼于 + -
赋值运算符
运算符 | 描述 | 实例 |
+= | 加法赋值运算符 | 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 |
比较运算
运算符 | 描述 | 实例 |
== | 判断相等。如果两个操作数的结果相等,则条件结 | 如a=3,b=3,则(a == b) 为 True |
!= | 不等于 。如果两个操作数的结果不相等,则条件为 | 如a=3,b=3,则(a == b) 为 True如 |
> | 运算符左侧操作数结果是否⼤于右侧操作数结果, | 如a=7,b=3,则(a > b) 为 True |
< | 运算符左侧操作数结果是否⼩于右侧操作数结果, | 如a=7,b=3,则(a < b) 为 False |
>= | 运算符左侧操作数结果是否⼤于等于右侧操作数结 | 如a=7,b=3,则(a < b) 为 False如 |
<= | 运算符左侧操作数结果是否⼩于等于右侧操作数结 | 如a=3,b=3,则(a <= b) 为 True |
逻辑运算符
运算符 | 逻辑表达式 | 描述 | 实例 |
and | x and y | 布尔"与":如果 x 为 False,x and y 返回 | True and False, 返回 False。 |
or | x or y | 布尔"或":如果 x 是 True,它返回 True,否则 | False or True, 返回 True。 |
not | not x | 布尔"⾮":如果 x 为 True,返回 False 。如果 x | not True 返回 False, not False 返回 True |
内置函数
函数 | 功能描述 |
abs(A) | 返回数字A的绝对值,若为复数则返回模 |
bool(A) | 返回与A等价的布尔值(True/False) |
complex(real, [imag]) | 构造复数 |
id(A) | 返回对象A的内存地址标识 |
int(A[,d]) | 返回实数,分数或者高精度实数A的整数部分,或把d进制的字符串A转换为十进制并返回,d默认为十进制 |
round(A[,小数位数]) | 对A四舍五入,若未指定小数的位数,则返回整数 |
pow(x,y[,z]) | 计算x的y次方并对结果进行z取模,等价pow(x,y)%z |
ord(x) | 将x转换为十进制 |
hex(x) | 将x转换为十六进制 |
oct(x) | 将x转换为八进制 |
float(A[,d]) | 将x转换为一个浮点数 |
ascii(obj) | 返回一个可打印的对象字符串方式表示,如果是非ascii字符就会输出\x,\u或\U等字符来表示 |
- [x,y[,z]]:嵌套形式表示 z 是独立于y 的可选参数,即在传入 y 的情况下,z 可以自由地选择传入或省略。
运算符优先级
()> 算数运算符 > 位运算> 逻辑运算符 > 比较 > 赋值