运算符讲解
欢迎大家来我的小课堂,这里有你学的到的内容,若有大牛发现有错误请私信我并指出,小白我一定改正!!!
算数运算符
| 运算符 | 作用 | 例子 |
| :-: | |-|
| + | 两个数相加 | x + y |
| - | 两个数相减 | x - y |
| * | 两个数相乘 | x * y |
| / | 两个数相除,取商 | x / y |
| % | 取模 - 返回除法的余数 | x % y |
| ** | 幂 - 返回x的y次幂 | x ** y |
| // | 取整除 - 返回商(向下取整) | >>> x = 5; >>> x // 2; >>> 2 |
比较运算符:
运算符 | 作用 | 例子 |
---|
== | 等于,比较两个对象是否相等 | x == y |
!= | 不等于,比较两个对象是否不相等 | x != y |
<> | 不等于,比较两个对象是否不相等(类似于 !=) | x <> y |
> | 大于,x是否大于y | x > y |
< | 小于,x是否小于y | x < y |
>= | 大于等于 - x大于等于y | x >= y |
== | 小于等于 - x小于等于y | x <= y |
赋值运算符
运算符 | 作用 | 例子 |
---|
= | 简单的赋值运算符 | x = y,将y的值赋给x |
+= | 加法赋值运算符 | x += y,等效于x = x + y |
-= | 减法赋值运算符 | x -= y,等效于x = x - y |
*= | 乘法赋值运算符 | x *= y,等效于x = x * y |
/= | 除法赋值运算符 | x /= y,等效于x = x / y |
%= | 取模赋值运算符 | x %= y,等效于x = x % y |
**= | 幂值赋值运算符 | x **= y,等效于x = x ** y |
//= | 取整除赋值运算符 | x //= y,等效于x = x // y |
位运算
运算符 | 作用 | 例子 |
---|
&(与) | 对应的二进制数必须都为1 才为1,否则为0 | x & y |
|(或) | 对应的二进制数只要有一个为 1 就为1 | x | y |
^(异或) | 对应的二进制数相反时才为1,例0和1的时候才能为1 | x ^ y |
~(取反运算符) | 把0变成1,把1变成0 | ~a |
逻辑运算符
运算符 | 逻辑表达式 | 描述 |
---|
and | x and y | 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 |
or | x or y | 布尔"或" - 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值。 |
not | not x | 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 |
Python成员运算符
除了以上的一些运算符之外,Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串,列表或元组。
运算符 | 描述 | 实例 |
---|
in | 如果在指定的序列中找到值返回 True,否则返回 False。 | x 在 y 序列中 , 如果 x 在 y 序列中返回 True。 |
not in | 如果在指定的序列中没有找到值返回 True,否则返回 False。 | x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。 |
Python身份运算符
身份运算符用于比较两个对象的存储单元
运算符 | 描述 | 实例 |
---|
is | is 是判断两个标识符是不是引用自一个对象 | x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False |
is not | is not 是判断两个标识符是不是引用自不同对象 | x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。 |
Python运算符优先级
以下表格列出了从最高到最低优先级的所有运算符:
运算符 | 描述 |
---|
** | 指数 (最高优先级) |
~ + - | 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@) |
* / % // | 乘,除,取模和取整除 |
+ - | 加法减法 |
>> << | 右移,左移运算符 |
& | 位 ‘AND’ |
^ | | 位运算符 |
<= < > >= | 比较运算符 |
<> == != | 等于运算符 |
= %= /= //= -= += *= **= | 赋值运算符 |
is is not | 身份运算符 |
in not in | 成员运算符 |
not and or | 逻辑运算符 |
数据类型的强制转换
强转类型 | 描述 |
---|
int(x) | 将x转换成一个整数 |
float(x) | 将x转换成浮点数 |
int(x [,base ]) | 将x转换为一个整数 |
long(x [,base ]) | 将x转换为一 |
float(x ) | 将x转换到一个浮点数 |
complex(real [,imag ]) | 创建一个复数 |
str(x ) | 将对象 x 转换为字符串 |
repr(x ) | 将对象 x 转换为表达式字符串 |
eval(str ) | 用来计算在字符串中的有效Python表达式,并返回一个对象 |
tuple(s ) | 将序列 s 转换为一个元组 |
list(s ) | 将序列 s 转换为一个列表 |
chr(x ) | 将一个整数转换为一个字符 |
unichr(x ) | 将一个整数转换为Unicode字符 |
ord(x ) | 将一个字符转换为它的整数值 |
hex(x ) | 将一个整数转换为一个十六进制字符串 |
oct(x ) | 将一个整数转换为一个八进制字符串 |
bin(x) | 将一个整数转换为一个二进制字符串 |
ASCLL值对照表
十进制 | 二进制 | 八进制 | 十六进制 |
---|
1 | 0000 0001 | 0000 0001 | 0000 0001 |
2 | 0000 0010 | 0000 0002 | 0000 0002 |
3 | 0000 0011 | 0000 0003 | 0000 0003 |
4 | 0000 0100 | 0000 0004 | 0000 0004 |
5 | 0000 0101 | 0000 0005 | 0000 0005 |
6 | 0000 0110 | 0000 0006 | 0000 0006 |
7 | 0000 0111 | 0000 0007 | 0000 0007 |
8 | 0000 1000 | 0000 0010 | 0000 0008 |
9 | 0000 1001 | 0000 0011 | 0000 0009 |
10 | 0000 1010 | 0000 0012 | 0000 000a |
11 | 0000 1011 | 0000 0013 | 0000 000b |
12 | 0000 1100 | 0000 0014 | 0000 000c |
13 | 0000 1101 | 0000 0015 | 0000 000d |
14 | 0000 1110 | 0000 0016 | 0000 000e |
15 | 0000 1111 | 0000 0017 | 0000 000f |