1·算数运算符
算数运算符号是处理四则运算 的符号,在数字的处理应用的多。
算数运算符
运算符 | 说明 | 实例 | 结果 |
+ | 加 | 1+1 | 2 |
- | 减 | 2-1 | 1 |
* | 乘 | 2*2 | 4 |
/ | 除 | 3/2 | 1.5 |
% | 求余,取除法的余数 | 7%2 | 1 |
// | 取整除,取除法的商整数部分 | 7//2 | 3 |
** | 幂 | 2**3 | 8,即 |
2·赋值运算符
赋值运算符主要用来为变量等赋值,使用时,可以直接把基本赋值运算符 “=” 右边的值赋值给左边的变量,也可以进行某些运算后在赋值给左边的变量。
运算符 | 说明 | 实例 | 结果 |
= | 简单的赋值运算 | x=y,x= 1+3 | x=y,x=4 |
+= | 加赋值 | 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 |
注意:
“=” 和 “==” 是不一样的运算符号,“=” 是赋值运算符,“==” 是比较运算符(在 比较两个对象是否相等时使用)
3·比较运算符
比较运算符,也称为关系运算符,用于对变量或者表达式的结果进行大小、真假等比较,如果比较结果为真,则返回True,如果比较结果为假,则返回False。通常在条件语句中作为判断的依据。
运算符 | 说明 | 实例 | 结果 |
> | 大于 | 'a'>'b' | Flse |
< | 小于 | 1<2 | True |
== | 等于 | 1==1 | True |
!= | 不等于 | 'a'!='b' | True |
>= | 大于或等于 | 1>=2 | False |
<= | 小于或等于 | 1<=2 | True |
当需要判断一个变量在两个变量之间,可以用 “值1<值2<值3”
4·逻辑运算符
逻辑运算符是对真和假两种布尔值进行运算运算后的结果也是一个布尔值
运算符 | 含义 | 用法 | 结合方向 |
and | 逻辑与 | op1 and op2 | 从左到右 |
or | 逻辑或 | op1 or op2 | 从左到右 |
not | 逻辑非 | op1 not op2 | 从左到右 |
表达式1 | 表达式2 | 表达式1 and 表达式2 | 表达式1 or 表达式2 | not 表达式2 |
True | True | True | True | False |
True | False | False | True | False |
False | False | False | False | False |
False | True | False | True | True |
5·位运算符
5.1·“位与”运算
“位于”运算的运算符为 “&”,运算法则是:两个操作数据(十进制整数)的二进制表示,只有对应位都是 1 时结果才是 1 ,否则就是 0 。如果两个操作数的精度不同,则结果的精度与精度高的操作数相同。
5.2·“位或”运算
“位于”运算的运算符为 “|”,运算法则是:两个操作数据(十进制整数)的二进制表示,只有对应位都是 0 时结果才是 0 ,否则就是 1 。如果两个操作数的精度不同,则结果的精度与精度高的操作数相同。
5.3·“位异或”运算
“位于”运算的运算符为 “^”,运算法则是:两个操作数据(十进制整数)的二进制表示,只有对应位同时为 0 或同时为 1 结果才是 1 ,否则就是 0 。如果两个操作数的精度不同,则结果的精度与精度高的操作数相同。
5.4·“位取反”运算
“位取反” 运算也称 “位非” 运算,运算符为 “~” ,运算法则:将操作数中对应的二进制数 1 修改为 0 ,0 修改为1
5.5·“左移位”运算
左移位运算符 "<<" ,是将一个二进制操作数向左移动指定的位数,左边高端位溢出被丢弃,右边(低端位)的空位用 0 补充。左移位运算相当于操作数乘以 2 的 n(位移位数) 次幂。
例如:
int类型数据48对应的二进制数是 00110000,将其左移2位,根据左移运算法则得出(00110000<<2)= 11000000,转为十进制数就是192(48x)
5.6·“右移位”运算
左移位运算符 ">>" ,是将一个二进制操作数向左移动指定的位数,右边(低端位)溢出被丢弃,而在填充左边(高端位)的空位时,如果最高位是 0(正数) ,左侧空位填 0;如果最高位是 1(负数) ,左侧空位填 1 。右移位运算相当于操作数乘以 2 的 n(位移位数) 次幂。
例如:
int类型数据-80对应的二进制数是 10110000,将其左移2位,根据左移运算法则得出(10110000>>2)= 11101100,转为十进制数就是-20(-80/)
6·运算符的优先级
运算符 | 说明 |
** | 幂 |
~、+、- | 取反、正号和负号 |
*、/、%、// | 算数运算符 |
+、- | 算数运算符 |
<<、>> | 位运算符 |
& | 位运算符 |
^ | 位运算符 |
| | 位运算符 |
<、<=、>、>=、!=、== | 比较运算符 |
注意:
在编写程序时尽量使用括号()来限定运算次序。